我在JBoss Fuse ESB 6.0中部署我的OSGi包时遇到了问题。它有commons-lang和commons-collections依赖项,它无法在运行时解决它们。
15:00:02,081 | WARN | edhat-024/deploy | fileinstall | 7 - org.apache.felix.fileinstall - 3.3.11.redhat-60024 | Error while starting bundle: file:/C:/jboss-fuse-6.0.0.redhat-024/deploy/test-1.0.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Unresolved constraint in bundle ebe [259]: Unable to resolve 259.0: missing requirement [259.0] osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.collections.map)(version>=3.2.0)(!(version>=4.0.0)))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4155)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.Felix.startBundle(Felix.java:2055)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[7:org.apache.felix.fileinstall:3.3.11.redhat-60024]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[7:org.apache.felix.fileinstall:3.3.11.redhat-60024]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[7:org.apache.felix.fileinstall:3.3.11.redhat-60024]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[7:org.apache.felix.fileinstall:3.3.11.redhat-60024]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[7:org.apache.felix.fileinstall:3.3.11.redhat-60024]
My POM has following dependencies:
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
<scope>provided</scope>
</dependency>
Manifest.MF has following import statement:
Import-Package: javax.xml.namespace,javax.xml.transform,javax.xml.transf
orm.stream,javax.xml.xpath,org.apache.camel;version="[2.10,3)",org.apac
he.commons.collections.map;version="[3.2,4)",org.apache.commons.lang;ve
rsion="[2.6,3)",org.w3c.dom,org.xml.sax
commons-collections and commons-lang jars are available in system folder of JBoss Fuse HOME. Do i need to explicit installs there bundles?
Thanks
Shiv