Find out reason for missing constraints in FUSE ESB 4.3.0
fvbetteraey Aug 26, 2010 9:32 AMHello,
I try to migrate some bundles from FUSE ESB 4.2 to FUSE ESB 4.3. Sadly it does not work out of the box, but I am confident that it should not be hard work!
Installing a bundle I was surprised about a new error message for unresolved constraints:
FUSE ESB 4.3
Error executing command: Unresolved constraint in bundle de.foobar.base.myBundle : Unable to resolve 179.0: missing requirement package; (&(package=de.foobar.arg)(version>=2.4.1.SNAPSHOT)) - package; (&(package=de.foobar.arg)(version>=2.4.1.SNAPSHOT))
Looking at this message it is hard to find out whats wrong! The same error forced in FUSE ESB 4.2 would bring up the message:
The bundle could not be resolved. Reason: Missing Constraint: Import-Package: org.apache.log4j.helpers;version="0.0.0"
Here it is obvious what is missing!
So my question is: How to find out the reason for missing constraints in FUSE ESB 4.3. Are there maybe any new karaf analyzing possibilities (karaf commands)?
If the reason for a constraint problem is not reported explicit it would be hard to find these problems.
Thanks for help
Franz
*************
This is my MANIFEST with fixed imports for the log4j packages (resolution:=optional) as the code referencing the missing log4j packages is not needed in my current use case.
de.foobar.base:myBundle (179)
-
Archiver-Version = Plexus Archiver
Bnd-LastModified = 1282827797984
Build-Jdk = 1.6.0_10
Bundle-DocURL = http://www.foobar.de/
Bundle-ManifestVersion = 2
Bundle-Name = de.foobar.base:myBundle
Bundle-SymbolicName = de.foobar.base.myBundle
Bundle-Version = 2.4.1.SNAPSHOT
Created-By = 1.6.0_10 (Sun Microsystems Inc.)
Export-Package = de.foobar.log;uses:="de.foobar.log.java,org.omg.CORBA,de.foobar.util,de.foobar.log.log4j";version="2.4.1.SNAPSHOT",de.foobar.data;version="2.4.1.SNAPSHOT",de.foobar.data.impl;uses:="de.foobar.data";version="2.4.1.SNAPSHOT",de.foobar.log.java;uses:="de.foobar.log";version="2.4.1.SNAPSHOT",de.foobar.system;uses:="de.foobar.util";version="2.4.1.SNAPSHOT",de.foobar.util;uses:="de.foobar.log,javax.management";version="2.4.1.SNAPSHOT",de.foobar.log.log4j;uses:="de.foobar.log,org.apache.log4j.helpers,org.apache.log4j,org.apache.log4j.xml,org.apache.log4j.spi";version="2.4.1.SNAPSHOT",de.foobar.config;uses:="de.foobar.system,de.foobar.arg";version="2.4.1.SNAPSHOT",de.foobar.arg;uses:="de.foobar.data,de.foobar.data.impl,de.foobar.util";version="2.4.1.SNAPSHOT"
Implementation-Title = myBundle
Implementation-Version = 2.4.1-SNAPSHOT
Import-Package = de.foobar.arg;version="2.4.1.SNAPSHOT",de.foobar.config;version="2.4.1.SNAPSHOT",de.foobar.data;version="2.4.1.SNAPSHOT",de.foobar.data.impl;version="2.4.1.SNAPSHOT",de.foobar.log;version="2.4.1.SNAPSHOT",de.foobar.log.java;version="2.4.1.SNAPSHOT",de.foobar.log.log4j;version="2.4.1.SNAPSHOT",de.foobar.system;version="2.4.1.SNAPSHOT",de.foobar.util;version="2.4.1.SNAPSHOT",javax.management,org.apache.log4j;resolution:=optional,org.apache.log4j.helpers;resolution:=optional,org.apache.log4j.spi;resolution:=optional,org.apache.log4j.xml;resolution:=optional,org.omg.CORBAManifest-Version = 1.0
Specification-Title = myBundle
Tool = Bnd-0.0.255