Dear Felix-users,
I'm new to Felix/OSGI, and am currently importing an external Maven2
project written for felix (and the maven-bundle-plugin). The packaging of
my project has the type set to "bundle", and the maven-bundle-plugin is
configured as follows :
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.0.1</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>
${artifactId}
</Bundle-SymbolicName>
<Bundle-Vendor>
someVendor
</Bundle-Vendor>
<Bundle-ClassPath>
.,bcprov-jdk16-145.jar,bctsp-jdk16-145.jar,bcmail-jdk16-145.jar
</Bundle-ClassPath>
<Private-Package>
some.package
</Private-Package>
<Import-Package>
javax.crypto,
javax.crypto.interfaces,
javax.crypto.spec,
javax.naming,
javax.naming.directory,
javax.security.auth.x500,
javax.activation,
org.osgi.framework
</Import-Package>
<Export-Package>
org.bouncycastle.util.encoders,
org.bouncycastle.tsp,
org.bouncycastle.cms,
org.bouncycastle.asn1,
org.bouncycastle.asn1.cms,
org.bouncycastle.asn1.pkcs
</Export-Package>
<Service-Component>
</Service-Component>
<DynamicImport-Package>
junit.framework,
junit.textui,
javax.mail,
javax.mail.internet
</DynamicImport-Package>
<Bundle-Activator>
some.package.Activator
</Bundle-Activator>
</instructions>
</configuration>
</plugin>
I am using maven and eclipse connecting to the repositories of my company,
and am behind a proxy. So I downloaded the maven-bundle-plugin manually,
and installed it using the following command :
mvn install:install-file -Dfile="C:\temp\maven-bundle-plugin-2.0.1.jar"
-DgroupId=org.apache.felix -DartifactId=maven-bundle-plugin -Dversion=2.0.1
-Dpackaging=jar -DgeneratePom=true
Now, when I try to build my project, I get the following error (the full
trace is in the attached log.txt) :
mvn org.apache.felix:maven-bundle-plugin:2.0.1:bundle -e
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] Internal error in the plugin manager executing goal
'org.apache.felix:maven-bundle-plugin:2.0.1:bundle': Unable to load the
mojo 'org.apache.felix:maven-bundle-plugin:2.0.1:bundle' in the plugin
'org.apache.felix:maven-bundle-plugin'. A required class is missing:
aQute/lib/osgi/Resource
aQute.lib.osgi.Resource
[INFO]
------------------------------------------------------------------------
(See attached file: log.txt)
Knowing that aQute was in the bnd tool, I downloaded bndlib.jar, installed
it in my local maven repository but the error remains.
Do you know what I'm doing wrong ?
Thanks,
Charles-Louis de Maere+ Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building otter-viewer-bouncy
[INFO] task-segment: [org.apache.felix:maven-bundle-plugin:2.0.1:bundle]
[INFO] ------------------------------------------------------------------------
-----------------------------------------------------
this realm = app0.child-container[org.apache.felix:maven-bundle-plugin:2.0.1]
urls[0] =
file:/c:/javadev/tools/maven/repository/org/apache/felix/maven-bundle-plugin/2.0.1/maven-bundle-plugin-2.0.1.jar
urls[1] =
file:/c:/javadev/tools/maven/repository/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar
Number of imports: 10
import: org.codehaus.classworlds.en...@a6c57a42
import: org.codehaus.classworlds.en...@12f43f3b
import: org.codehaus.classworlds.en...@20025374
import: org.codehaus.classworlds.en...@f8e44ca4
import: org.codehaus.classworlds.en...@92758522
import: org.codehaus.classworlds.en...@ebf2705b
import: org.codehaus.classworlds.en...@bb25e54
import: org.codehaus.classworlds.en...@bece5185
import: org.codehaus.classworlds.en...@3fee8e37
import: org.codehaus.classworlds.en...@3fee19d8
this realm = plexus.core
urls[0] = file:/c:/javadev/tools/maven/bin/../lib/maven-2.2.1-uber.jar
Number of imports: 10
import: org.codehaus.classworlds.en...@a6c57a42
import: org.codehaus.classworlds.en...@12f43f3b
import: org.codehaus.classworlds.en...@20025374
import: org.codehaus.classworlds.en...@f8e44ca4
import: org.codehaus.classworlds.en...@92758522
import: org.codehaus.classworlds.en...@ebf2705b
import: org.codehaus.classworlds.en...@bb25e54
import: org.codehaus.classworlds.en...@bece5185
import: org.codehaus.classworlds.en...@3fee8e37
import: org.codehaus.classworlds.en...@3fee19d8
-----------------------------------------------------
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Internal error in the plugin manager executing goal
'org.apache.felix:maven-bundle-plugin:2.0.1:bundle': Unable to load the mojo
'org.apache.felix:maven-bundle-plugin:2.0.1:bundle' in the plugin
'org.apache.felix:maven-bundle-plugin'. A required class is missing:
aQute/lib/osgi/Resource
aQute.lib.osgi.Resource
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Internal error in the
plugin manager executing goal
'org.apache.felix:maven-bundle-plugin:2.0.1:bundle': Unable to load the mojo
'org.apache.felix:maven-bundle-plugin:2.0.1:bundle' in the plugin
'org.apache.felix:maven-bundle-plugin'. A required class is missing:
aQute/lib/osgi/Resource
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:698)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
at
org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
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.PluginManagerException: Unable to load the
mojo 'org.apache.felix:maven-bundle-plugin:2.0.1:bundle' in the plugin
'org.apache.felix:maven-bundle-plugin'. A required class is missing:
aQute/lib/osgi/Resource
at
org.apache.maven.plugin.DefaultPluginManager.getConfiguredMojo(DefaultPluginManager.java:669)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:468)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
... 17 more
Caused by:
org.codehaus.plexus.component.repository.exception.ComponentLookupException:
Unable to lookup component
'org.apache.maven.plugin.Mojoorg.apache.felix:maven-bundle-plugin:2.0.1:bundle',
it could not be created
at
org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:335)
at
org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:440)
at
org.apache.maven.plugin.DefaultPluginManager.getConfiguredMojo(DefaultPluginManager.java:652)
... 19 more
Caused by:
org.codehaus.plexus.component.factory.ComponentInstantiationException: Could
not instanciate component: role: 'null', implementation:
'org.apache.felix.bundleplugin.BundlePlugin'
at
org.codehaus.plexus.component.factory.java.JavaComponentFactory.makeException(JavaComponentFactory.java:77)
at
org.codehaus.plexus.component.factory.java.JavaComponentFactory.newInstance(JavaComponentFactory.java:62)
at
org.codehaus.plexus.DefaultPlexusContainer.createComponentInstance(DefaultPlexusContainer.java:1464)
at
org.codehaus.plexus.component.manager.AbstractComponentManager.createComponentInstance(AbstractComponentManager.java:93)
at
org.codehaus.plexus.component.manager.PerLookupComponentManager.getComponent(PerLookupComponentManager.java:48)
at
org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:331)
... 21 more
Caused by: java.lang.NoClassDefFoundError: aQute/lib/osgi/Resource
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at
org.codehaus.plexus.component.factory.java.JavaComponentFactory.newInstance(JavaComponentFactory.java:44)
... 25 more
Caused by: java.lang.ClassNotFoundException: aQute.lib.osgi.Resource
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at
org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195)
at
org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:255)
at
org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:274)
at
org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
... 31 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Fri Apr 09 13:24:29 CEST 2010
[INFO] Final Memory: 2M/6M
[INFO] ------------------------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]