Brad
It can be one of the biggest pains in workng with OSGi.
In the end, we actually wrote a tool we called mangen (Manifest
generator) to help deal with ours:
Originally posted here:
http://oscar-osgi.sourceforge.net/mangen/
And moved to Felix, but not fully integrated with latest manifest
parsing code (R4 policy handling code breaks the current build): I have
raised a couple of JIRA issues to bring it up to date, if I ever get time!!
http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Manifest+Generator+(mangen)
It's not perfect and it is a little long in the tooth now, and I know
others have created alternative approaches since. We still use it
though, since our app is fairly self contained and we're mainly
developing/integrating a standalone application around bundles with some
use of 3rd party bundles.
Regards
-- Rob
Brad Cox wrote:
What's the right way to chase dependencies?
One of my components is an OpenSSO policy enforcement point that
originated with source code from a Netbeans tutorial. It has
dependencies to god know what. I can work the OpenSSO issues. What I
need help with is how experts deal with similar problems. I don't want
to rework that until I get what I have now to load.
This shows where I'm at and how I've been dealing with it. My current
goal (unless someone can show a better way) is for the core and each
component to fully (transitively) enclose all of its dependencies.
That makes for big jars and slow compiles but that's the mental model
I'm working; that a component should contain everything it needs (with
obvious exceptions for java.*, soakit.core.*, etc).
I'm new to this and don't understand whether other models exist that
might work, for example tracking down dependencies at load time (seems
that violates the goal to me but whatta I know; I'm the newbie).
-> ps
START LEVEL 1
ID State Level Name
[ 0] [Active ] [ 0] System Bundle (1.2.1)
[ 1] [Active ] [ 1] Apache Felix Shell Service (1.0.2)
[ 2] [Active ] [ 1] Apache Felix Shell TUI (1.0.2)
[ 3] [Active ] [ 1] Apache Felix Bundle Repository (1.2.0)
[ 4] [Active ] [ 1] soakit.core (1.0.0.SNAPSHOT)
[ 5] [Active ] [ 1] iPOJO (1.0.0)
[ 6] [Active ] [ 1] soakit.port.file (1.0.0.SNAPSHOT)
[ 7] [Active ] [ 1] soakit.transform.identity (1.0.0.SNAPSHOT)
[ 9] [Active ] [ 1] soakit.port.http (1.0.0.SNAPSHOT)
[ 13] [Active ] [ 1] soakit.transform.log (1.0.0.SNAPSHOT)
[ 14] [Installed ] [ 1] soakit.transform.pep (1.0.0.SNAPSHOT)
[ 15] [Active ] [ 1] soakit.transform.xsl (1.0.0.SNAPSHOT)
[ 16] [Resolved ] [ 1] soakit.main (1.0.0.SNAPSHOT)
[ 17] [Installed ] [ 1] soakit.test (1.0.0.SNAPSHOT)
-> update 14
org.osgi.framework.BundleException: Unresolved constraint in bundle
14: package; (package=com.sun.msv.grammar.trex)
-> update 14
org.osgi.framework.BundleException: Unresolved constraint in bundle
14: package; (package=com.sun.msv.grammar.trex)
-> update 14
org.osgi.framework.BundleException: Unresolved constraint in bundle
14: package; (package=com.sun.xml.fastinfoset.dom)
-> update 14
org.osgi.framework.BundleException: Unresolved constraint in bundle
14: package; (package=com.bea.staxb.buildtime.internal.tylar)
->
Each try takes about 30 minutes right now, and there's no sign this
chase is near ended. Surely there's a better way. Please share it.
------------------------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Ascert - Taking systems to the Edge
[EMAIL PROTECTED]
+44 (0)20 7488 3470
www.ascert.com