Hi
We've had quite a few problems building Geronimo lately and we've
switched our internal repository from Artifactory to Nexus in an
attempt to get a more stable environment. This also made us, not
entirely intentionally it must be said, go from using non-unique to
unique snapshots of Geronimo 2.2-SNAPSHOT.
When we deploy Geronimo using unique snapshots we're unable to
build our server later. The car-maven-plugin fails with errors like
this:
Cound not find parent configuration: org.apache.geronimo.configs/
openejb-deployer/2.2-20090609.071606-2/car
When Geronimo is deployed using non-unique snapshots, or when we
build our server on a box that also has Geronimo built on it
locally, the error does not occur. Here's the full trace of the
error:
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] could not package plugin
Embedded error: Unable to create configuration for deployment
Cound not find parent configuration: org.apache.geronimo.configs/
openejb-deployer/2.2-20090609.071606-2/car
[INFO]
------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: could not
package plugin
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor
.executeGoals(DefaultLifecycleExecutor.java:703)
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor
.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540)
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:
519)
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor
.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor
.executeTaskSegments(DefaultLifecycleExecutor.java:332)
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at
org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: could
not package plugin
at
org
.apache
.geronimo.mavenplugins.car.PackageMojo.execute(PackageMojo.java:212)
at
org
.apache
.maven
.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:
483)
at
org
.apache
.maven
.lifecycle
.DefaultLifecycleExecutor
.executeGoals(DefaultLifecycleExecutor.java:678)
... 16 more
Caused by: org.apache.geronimo.common.DeploymentException: Unable
to create configuration for deployment
at
org
.apache
.geronimo
.deployment
.DeploymentContext.createTempConfiguration(DeploymentContext.java:
151)
at
org
.apache
.geronimo
.deployment.DeploymentContext.<init>(DeploymentContext.java:131)
at
org
.apache
.geronimo
.deployment.DeploymentContext.<init>(DeploymentContext.java:111)
at
org
.apache
.geronimo
.deployment
.service
.ServiceConfigBuilder.buildConfiguration(ServiceConfigBuilder.java:
227)
at
org
.apache
.geronimo
.deployment
.service
.ServiceConfigBuilder.buildConfiguration(ServiceConfigBuilder.java:
199)
at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:
256)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org
.apache
.geronimo
.gbean
.runtime
.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
at
org
.apache
.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:
130)
at
org
.apache
.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:850)
at
org
.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:
237)
at
org
.apache
.geronimo
.mavenplugins.car.PackageMojo.invokeDeployer(PackageMojo.java:483)
at
org
.apache
.geronimo
.mavenplugins.car.PackageMojo.buildPackage(PackageMojo.java:309)
at
org
.apache
.geronimo.mavenplugins.car.PackageMojo.execute(PackageMojo.java:209)
... 18 more
Caused by: org.apache.geronimo.kernel.config.LifecycleException:
load of no.jotta.backup.plugins/framework-plugin/0.1-SNAPSHOT/car
failed
at
org
.apache
.geronimo
.kernel
.config
.SimpleConfigurationManager
.loadConfiguration(SimpleConfigurationManager.java:316)
at
org
.apache
.geronimo
.deployment
.DeploymentConfigurationManager
.loadConfiguration(DeploymentConfigurationManager.java:115)
at
org
.apache
.geronimo
.kernel
.config
.SimpleConfigurationManager
.loadConfiguration(SimpleConfigurationManager.java:277)
at
org
.apache
.geronimo
.deployment
.DeploymentConfigurationManager
.loadConfiguration(DeploymentConfigurationManager.java:111)
at
org
.apache
.geronimo
.deployment
.DeploymentContext.createTempConfiguration(DeploymentContext.java:
148)
... 34 more
Caused by:
org.apache.geronimo.kernel.config.InvalidConfigException: Error
starting configuration gbean no.jotta.backup.plugins/framework-
plugin/0.1-SNAPSHOT/car
at
org
.apache
.geronimo
.kernel
.config
.SimpleConfigurationManager.load(SimpleConfigurationManager.java:341)
at
org
.apache
.geronimo
.deployment
.DeploymentConfigurationManager
.load(DeploymentConfigurationManager.java:119)
at
org
.apache
.geronimo
.kernel
.config
.SimpleConfigurationManager
.loadConfiguration(SimpleConfigurationManager.java:302)
... 38 more
Caused by:
org.apache.geronimo.kernel.config.InvalidConfigException: Cound not
find parent configuration: org.apache.geronimo.configs/openejb-
deployer/2.2-20090609.071606-2/car
at
org
.apache
.geronimo
.kernel
.config
.SimpleConfigurationManager
.findParentConfigurations(SimpleConfigurationManager.java:355)
at
org
.apache
.geronimo
.kernel
.config
.SimpleConfigurationManager.load(SimpleConfigurationManager.java:335)
... 40 more
This happens on a simple lib-only Geronimo plugin POM like this:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>no.jotta.backup.plugins</groupId>
<artifactId>framework</artifactId>
<version>0.1-SNAPSHOT</version>
</parent>
<artifactId>framework-plugin</artifactId>
<packaging>car</packaging>
<name>Jotta Framework :: Framework Plugin</name>
<description>
${pom.name} contains the shared libraries for
other plugins in ${productName}.
</description>
<dependencies>
<!-- Geronimo environment -->
<dependency>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>geronimo-gbean-deployer-bootstrap</
artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>geronimo-gbean-deployer</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>j2ee-deployer</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>connector-deployer</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>transaction</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>openejb</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>openejb-deployer</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>openjpa</artifactId>
<version>${geronimoVersion}</version>
<type>car</type>
</dependency>
<!-- Jotta modules -->
<!-- Core -->
<dependency>
<groupId>no.jotta.backup.core</groupId>
<artifactId>core-server</artifactId>
<version>${project.version}</version>
</dependency>
<!-- 3rd party libs -->
<!-- Shared logging API -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4jVersion}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.geronimo.buildsupport</groupId>
<artifactId>car-maven-plugin</artifactId>
<configuration>
<category>${productName}</category>
<deploymentConfigs>
<deploymentConfig>$
{gbeanDeployerBootstrap}</deploymentConfig>
</deploymentConfigs>
<!-- Need to specify this -->
<deployerName>org.apache.geronimo.framework/
geronimo-gbean-deployer-bootstrap/${geronimoVersion}/car?
j2eeType=Deployer,name=Deployer</deployerName>
</configuration>
</plugin>
</plugins>
</build>
</project>
Is this behavior to be expected, or maybe a bug? As I mentioned
using non-unique snapshots solves the problem.
Thanks for your help!
Trygve Hardersen
Jotta AS