|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
all non-osgi jars in one bundleHello,
I'm tring to buid a bundle that will contain all non-osgi jars in order to share it between other bundles. I've started with one: .... <dependencies> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.1.4</version> </dependency> ... </dependencies> <build> <plugins> <plugin> <groupId>org.ops4j</groupId> <artifactId>maven-pax-plugin</artifactId> <version>1.4</version> <extensions>true</extensions> </plugin> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <version>1.4.3</version> <configuration> <instructions> ... <Export-Package>*;-split-package:=merge-first</Export-Package> <Import-Package>javax.*</Import-Package> <Embed-Transitive>true</Embed-Transitive> <Embed-Dependency>*;inline=true</Embed-Dependency> <_include>-osgi.bnd</_include> </instructions> </configuration> </plugin> </plugins> </build> .... When I'm running mvn clean org.apache.felix:maven-bundle-plugin:bundleall install I get this [INFO] [bundle:bundleall] [INFO] Bundling javax.activation:activation:jar:1.1:compile [INFO] Bundling javax.xml.stream:stax-api:jar:1.0-2:compile [INFO] Bundling javax.xml.bind:jaxb-api:jar:2.1:compile [INFO] Bundling com.sun.xml.bind:jaxb-impl:jar:2.1.4:compile [INFO] [resources:resources] [INFO] Using default encoding to copy filtered resources. [INFO] [pax:compile] [INFO] No sources to compile [INFO] [resources:testResources] [INFO] Using default encoding to copy filtered resources. [INFO] [pax:testCompile] [INFO] No sources to compile [INFO] [surefire:test] [INFO] No tests to run. [INFO] [bundle:bundle] [ERROR] Error building bundle com.du.lib.bundle:du-lib-bundle:bundle:1.0.0-SNAPS HOT : Unresolved references to [com.sun.xml.fastinfoset.sax, com.sun.xml.fastinf oset.stax, org.jvnet.fastinfoset, org.jvnet.staxex, org.w3c.dom, org.xml.sax, or g.xml.sax.ext, org.xml.sax.helpers] by class(es) on the Bundle-Classpath[Jar:dot ]: [com/sun/xml/bind/v2/runtime/unmarshaller/UnmarshallerImpl.class, ...] How can I force the plugin to go deeper and get me the other dependencies too from the maven repository? Thank you |
|
|
Re: all non-osgi jars in one bundle2009/10/14 Gogu Nae <nae.gogu@...>
> Hello, > > I'm tring to buid a bundle that will contain all non-osgi jars in order to > share it between other bundles. > > I've started with one: > .... > <dependencies> > <dependency> > <groupId>com.sun.xml.bind</groupId> > <artifactId>jaxb-impl</artifactId> > <version>2.1.4</version> > </dependency> > ... > </dependencies> > <build> > <plugins> > <plugin> > <groupId>org.ops4j</groupId> > > <artifactId>maven-pax-plugin</artifactId> > <version>1.4</version> > <extensions>true</extensions> > </plugin> > <plugin> > <groupId>org.apache.felix</groupId> > <artifactId>maven-bundle-plugin</artifactId> > <version>1.4.3</version> > <configuration> > <instructions> > ... > > <Export-Package>*;-split-package:=merge-first</Export-Package> > <Import-Package>javax.*</Import-Package> > <Embed-Transitive>true</Embed-Transitive> > <Embed-Dependency>*;inline=true</Embed-Dependency> > <_include>-osgi.bnd</_include> > </instructions> > </configuration> > </plugin> > </plugins> > </build> > .... > > When I'm running > mvn clean org.apache.felix:maven-bundle-plugin:bundleall install > > I get this > > [INFO] > [bundle:bundleall] > [INFO] Bundling javax.activation:activation:jar:1.1:compile > [INFO] Bundling javax.xml.stream:stax-api:jar:1.0-2:compile > [INFO] Bundling javax.xml.bind:jaxb-api:jar:2.1:compile > [INFO] Bundling com.sun.xml.bind:jaxb-impl:jar:2.1.4:compile > [INFO] [resources:resources] > [INFO] Using default encoding to copy filtered resources. > [INFO] [pax:compile] > [INFO] No sources to compile > [INFO] [resources:testResources] > [INFO] Using default encoding to copy filtered resources. > [INFO] [pax:testCompile] > [INFO] No sources to compile > [INFO] [surefire:test] > [INFO] No tests to run. > [INFO] [bundle:bundle] > [ERROR] Error building bundle > com.du.lib.bundle:du-lib-bundle:bundle:1.0.0-SNAPS > HOT : Unresolved references to [com.sun.xml.fastinfoset.sax, > com.sun.xml.fastinf > oset.stax, org.jvnet.fastinfoset, org.jvnet.staxex, org.w3c.dom, > org.xml.sax, or > g.xml.sax.ext, org.xml.sax.helpers] by class(es) on the > Bundle-Classpath[Jar:dot > ]: [com/sun/xml/bind/v2/runtime/unmarshaller/UnmarshallerImpl.class, ...] > > How can I force the plugin to go deeper and get me the other dependencies > too from the maven repository? > firstly try the latest version of the plugin (2.0.1) because it handles the various dependency scopes better secondly if you're using a transitive Embed-Dependency then you should just need to use bundle:bundle the bundleall goal is a specialized goal that attempts to wrap each dependency up as a bundle using heuristics (export all content, etc.) and doesn't perform any embedding, etc. - with bundleall you'll get a lot of small bundles, whereas with a transitive Embed-Dependency you should get one big bundle. > Thank you > -- Cheers, Stuart |
| Free embeddable forum powered by Nabble | Forum Help |