Thanks once again, bundles are fine now :)
On Tue, Jan 27, 2009 at 3:38 PM, Stuart McCulloch <[email protected]> wrote: > 2009/1/28 Vinicius Carvalho <[email protected]> > > > Yeah, my bad sorry :) > > > > This bundle is fine, now I'm building the graph bundle, which requires > some > > internal depenencies (I was doing this by hand by adding them to the jar > > and > > then using the Bundle-ClassPath). Well I used the <Embed-Dependencies> > tag, > > it does embed all the dependencies but it generates a lot of > > private-packages . Just would like to know if they are really necessary? > > > > the Private-Package list is additional metadata that Bnd uses to tell you > what packages it kept as private - you don't need to keep this metadata > in the final bundle. Include-Resource is another informational entry that > you don't need to keep around (except for debugging your build) > > to remove both of these entries you can use: > > <_removeheaders>Include-Resource,Private-Package</_removeheaders> > > or if you're using a property file to configure the Bnd instructions: > > -removeheaders: Include-Resource,Private-Package > > see http://aqute.biz/Code/Bnd (referenced from the bundleplugin docs) > > I've seen that one can use the <_exportcontents> would this be solution? > > > > _exportcontents is explained on the Bnd site, as well as here: > > http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html > > it basically acts like Export-Package but doesn't change what's pulled into > your final bundle (whereas Export-Package will pull in the listed packages > directly into your bundle, regardless of whether they're already embedded) > > so if you embedded a Jar and used Export-Package you'd end up with two > copies of these classes (ie. one embedded, and one pulled in and inlined) > Using exportcontents just means you can export packages from embedded > Jars without pulling in duplicate classes - it shouldn't affect > Private-Package > > Regards > > > > Manifest-Version: 1.0 > > Export-Package: org.openspotlight.graph;uses:="javax.xml.transform,jav > > ax.xml.transform.dom,org.w3c.dom" > > Private-Package: org.openspotlight.graph.elements,edu.uci.ics.jung.gra > > ph.event,org.apache.commons.collections15.set,org.openspotlight.graph > > .exceptions,org.apache.commons.beanutils.expression,com.sun.xml.bind. > > util,cern.colt.list.adapter,com.sun.xml.bind.v2.runtime.unmarshaller, > > org.apache.commons.beanutils.locale.converters,com.sun.xml.bind.v2.ru > > ntime,org.apache.commons.beanutils.converters,cern.jet.random.samplin > > g,com.sun.xml.bind.v2.model.runtime,org.apache.commons.collections15. > > collection,hep.aida.bin,com.sun.xml.bind.v2.model.impl,com.sun.xml.bi > > nd,javax.xml.bind.util,com.sun.xml.bind.v2.bytecode,cern.colt,com.sun > > .xml.bind.v2.model.annotation,corejava,com.sun.xml.bind.unmarshaller, > > cern.colt.matrix.doublealgo,hep.aida.ref,org.apache.commons.collectio > > ns15.functors,edu.uci.ics.jung.graph.util,org.openspotlight.graph.uti > > l,com.sun.xml.bind.api,com.sun.xml.txw2.output,cern.jet.stat.quantile > > ,com.sun.xml.bind.v2.schemagen.episode,javax.xml.bind.attachment,org. > > apache.commons.collections15.list,net.jcip.annotations,cern.colt.func > > tion,javax.xml.bind.annotation,com.sun.xml.bind.annotation,com.sun.xm > > l.bind.v2.runtime.reflect,org.openspotlight.graph.predicates,edu.uci. > > ics.jung.graph,org.apache.commons.beanutils.locale,cern.colt.map,cern > > .colt.matrix.bench,com.sun.istack.localization,org.apache.commons.bea > > nutils,com.sun.istack,com.sun.xml.bind.api.impl,cern.clhep,org.apache > > .commons.collections,org.apache.commons.collections15.buffer,cern.jet > > .stat,com.sun.xml.bind.v2.model.nav,org.apache.commons.collections15. > > keyvalue,com.sun.xml.bind.v2.runtime.property,cern.colt.bitvector,com > > .sun.xml.txw2.annotation,cern.jet.math,javax.xml.bind.helpers,cern.co > > lt.matrix,hep.aida,cern.colt.list,cern.colt.buffer,com.sun.xml.bind.v > > 2.runtime.output,org.apache.commons.collections15.bag,cern.jet.random > > ,cern.jet.random.engine,com.sun.xml.bind.v2.schemagen,com.sun.xml.bin > > d.v2.util,cern.colt.matrix.objectalgo,javax.xml.bind.annotation.adapt > > ers,com.sun.xml.bind.v2.runtime.reflect.opt,com.sun.xml.bind.v2.model > > .core,org.apache.commons.collections15.map,com.sun.xml.txw2,com.sun.x > > ml.bind.v2.schemagen.xmlschema,org.apache.commons.collections15.compa > > rators,org.apache.commons.collections15.iterators,org.apache.commons. > > collections15.bidimap,com.sun.xml.bind.marshaller,com.sun.xml.bind.v2 > > ,cern.colt.matrix.linalg,cern.colt.matrix.impl,org.apache.commons.col > > lections15,javax.xml.bind,org.apache.commons.collections15.multimap > > Bundle-ClassPath: .,commons-beanutils-core-1.8.0.jar,graph-2.0-beta1.j > > ar,jaxb-api-2.1.jar,colt-1.2.0.jar,collections-generic-4.01.jar,jaxb- > > impl-2.1.9.jar,jcip-annotations-1.0.jar,api-2.0-beta1.jar > > Built-By: viniciuscarvalho > > Tool: Bnd-0.0.295 > > Bundle-Name: SpotLight :: Graph > > Created-By: Apache Maven Bundle Plugin > > Bundle-Vendor: Caravela > > Build-Jdk: 1.6.0_07 > > Bundle-Version: 0.0.1.SNAPSHOT > > Bnd-LastModified: 1233076965413 > > Bundle-ManifestVersion: 2 > > Bundle-License: http://www.gnu.org/licenses/lgpl-2.1.html > > Bundle-DocURL: http://www.caravelatech.com/ > > Import-Package <http://www.caravelatech.com/Import-Package>: > > EDU.oswego.cs.dl.util.concurrent,com.sun.xml.fastinfos > > et.sax,com.sun.xml.fastinfoset.stax,javax.activation,javax.imageio,ja > > vax.imageio.stream,javax.xml.datatype,javax.xml.namespace,javax.xml.p > > arsers,javax.xml.stream,javax.xml.stream.events,javax.xml.transform,j > > avax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.st > > ream,javax.xml.validation,org.apache.commons.logging,org.jvnet.fastin > > foset,org.jvnet.staxex,org.openspotlight.graph,org.w3c.dom,org.xml.sa > > x,org.xml.sax.ext,org.xml.sax.helpers > > Embed-Dependency: * > > Bundle-SymbolicName: org.openspotlight.spotlight-graph > > > > On Tue, Jan 27, 2009 at 3:19 PM, Guillaume Sauthier < > > [email protected]> wrote: > > > > > In fact, you telled Bnd that you only wanted to import the package > > > 'org.openspotlight.graph', So Bnd do what you ask it to do :) > > > I think that you expect Bnd to: > > > * Import manually the 'org.openspotlight.graph' package (for some > reason, > > > you added it here because Bnd cannot discover it by itself ?) > > > * And still contiue to import all other referenced classes > > > > > > The working statement is : > > > > > > <Import-Package> > > > org.openspotlight.graph,* > > > </Import-Package> > > > > > > Notice the final '*' > > > > > > Cheers > > > --Guillaume > > > > > > > > > > > > > > > Vinicius Carvalho a écrit : > > > > > > Really? I tough it would do it for my by inspecting my import > statements > > on > > > my classes? > > > > > > On Tue, Jan 27, 2009 at 12:01 PM, Martin Thelian < > [email protected]> > > <[email protected]>wrote: > > > > > > > > > > > > You need to add import statements for "org.osgi.framework" and > > > "org.osgi.util.tracker" into the Import-Package tag, e.g. > > > > > > > > > > > > <Import-Package> > > > org.openspotlight.graph, > > > org.osgi.framework, > > > org.osgi.util.tracker > > > </Import-Package> > > > > > > > > > > > > Regards, > > > Martin > > > > > > > > > Vinicius Carvalho schrieb: > > > > > > Hello there! I've assembled my project using the maven bundle plugin, > > but > > > > > > > > > when I run the bundle goal, I get an exception: > > > > > > --- > > > [INFO] Building parsers-api > > > [INFO] task-segment: [org.apache.felix:maven-bundle-plugin:bundle] > > > [INFO] > > > > > > > > > ---------------------------------------------------------------------------- > > > [INFO] [bundle:bundle] > > > [ERROR] Error building bundle > > > org.openspotlight:parsers-api:bundle:0.0.1-SNAPSHOT : Unresolved > > > references > > > to [org.osgi.framework, org.osgi.util.tracker] by class(es) on the > > > Bundle-Classpath[Jar:dot]: > > > [org/openspotlight/parsers/internal/Activator.class, > > > org/openspotlight/parsers/internal/ParserTracker.class] > > > [ERROR] Error(s) found in bundle configuration > > > [INFO] > > > > ------------------------------------------------------------------------ > > > [ERROR] BUILD ERROR > > > [INFO] > > > > ------------------------------------------------------------------------ > > > [INFO] Error(s) found in bundle configuration > > > > > > [INFO] > > > > ------------------------------------------------------------------------ > > > [INFO] For more information, run Maven with the -e switch > > > [INFO] > > > > ------------------------------------------------------------------------ > > > [INFO] Total time: 1 second > > > [INFO] Finished at: Tue Jan 27 10:58:29 BRST 2009 > > > [INFO] Final Memory: 10M/23M > > > [INFO] > > > > ------------------------------------------------------------------------ > > > Here's my pom.xml > > > > > > <project xmlns="http://maven.apache.org/POM/4.0.0" < > > http://maven.apache.org/POM/4.0.0> xmlns:xsi=" > > > http://www.w3.org/2001/XMLSchema-instance" < > > http://www.w3.org/2001/XMLSchema-instance> > > > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > > > http://maven.apache.org/maven-v4_0_0.xsd" < > > > http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd > > >> > > > <modelVersion>4.0.0</modelVersion> > > > <groupId>org.openspotlight</groupId> > > > <artifactId>parsers-api</artifactId> > > > <packaging>bundle</packaging> > > > <version>0.0.1-SNAPSHOT</version> > > > <name>parsers-api</name> > > > <url>http://maven.apache.org</url> > > > <dependencies> > > > <dependency> > > > <groupId>junit</groupId> > > > <artifactId>junit</artifactId> > > > <version>3.8.1</version> > > > <scope>test</scope> > > > </dependency> > > > <dependency> > > > <groupId>org.apache.felix</groupId> > > > <artifactId>org.osgi.core</artifactId> > > > <version>1.2.0</version> > > > </dependency> > > > <dependency> > > > <groupId>org.apache.felix</groupId> > > > <artifactId>org.osgi.compendium</artifactId> > > > <version>1.2.0</version> > > > </dependency> > > > </dependencies> > > > <build> > > > <plugins> > > > <plugin> > > > <groupId>org.apache.felix</groupId> > > > <artifactId>maven-bundle-plugin</artifactId> > > > <extensions>true</extensions> > > > <configuration> > > > <instructions> > > > > > > <Export-Package>org.openspotlight.parsers</Export-Package> > > > > > > <Import-Package>org.openspotlight.graph</Import-Package> > > > > > > <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName> > > > > > > <Private-Package>org.openspotlight.parsers.*</Private-Package> > > > </instructions> > > > </configuration> > > > </plugin> > > > </plugins> > > > </build> > > > > > > </project> > > > > > > I've followed the instructions at felix site documentation. > > > > > > Regards > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [email protected] > > > For additional commands, e-mail: [email protected] > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [email protected] > > > For additional commands, e-mail: [email protected] > > > > > > > > > -- > Cheers, Stuart >

