geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron Mulder" <ammul...@alumni.princeton.edu>
Subject New car-maven-plugin issue
Date Sun, 13 Aug 2006 13:17:16 GMT
So I can build Plugin A (quartz-scheduler).  But the build for Plugin
B (quartz-deployer) which depends on Plugin A fails to create the CAR
with an error like this:

INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] org.gplugins.quartz.QuartzScheduler in classloader
gplugins/quartz-deployer/0.3/car
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.NoClassDefFoundError: org.gplugins.quartz.QuartzScheduler in
classloader gplugins/quartz-deployer/0.3/car
...
        at org.apache.geronimo.gbean.GBeanInfo.getGBeanInfo(GBeanInfo.java:76)
        at org.apache.geronimo.deployment.service.ServiceConfigBuilder.addGBeanData(ServiceConfigBuilder.java:295)
        at org.apache.geronimo.deployment.service.ServiceConfigBuilder.addGBeans(ServiceConfigBuilder.java:290)
        at org.apache.geronimo.deployment.service.ServiceConfigBuilder.buildConfiguration(ServiceConfigBuilder.java:256)
        at org.apache.geronimo.deployment.service.ServiceConfigBuilder.buildConfiguration(ServiceConfigBuilder.java:211)

So it's saying that a quartz-deployer GBean can't find a
quartz-scheduler class.  Now, both the POM for quartz-deployer and the
plan for quartz-deployer include an entry for the quartz-scheduler
CAR:

POM:

        <dependency>
            <groupId>gplugins</groupId>
            <artifactId>quartz-scheduler</artifactId>
            <scope>provided</scope>
            <type>car</type>
        </dependency>

target/plan/plan.xml:

      <dependency>
        <groupId>gplugins</groupId>
        <artifactId>quartz-scheduler</artifactId>
        <type>car</type>
      </dependency>

And when I deploy the quartz-deployer JAR by hand using the plan at
target/plan/plan.xml, then it works fine.

What I don't understand is, how can service-config-builder not load
the quartz-scheduler CAR dependency and then claim that the classes
are missing?  If it loaded the dependency, the classes should be there
(e.g. it works if deployed to a real server).  If it didn't load the
dependency, why didn't it get a missing dependency error?

Thanks,
     Aaron

Mime
View raw message