Benson Margulies wrote:
I had reached a point of terminal frustration with trying to build a bundle
that just incorporated Spring.
So, I decided to stop hitting myself in the head with a rock, and just go
find the necessary artifacts to get bundles for the spring components.
My POM is below.
When I try to run it, I get a host of complaints about missing
'Import-Package' constraints on my bundle.
If you include a bunch of stuff in your bundle, BND (from
maven-bundle-plugin) will generate an Import-Package declaration that
includes all packages referenced by you bundle content, but not included
in the bundle (i.e., all external dependencies). At run-time, you need
to supply bundles that export these packages or else you will get
complaints. If you don't really need the imported packages, then you
must tell BND to not generate the imports.
-> richard
I'm really confused about Import-Package. Is it nonstandard? Is it only
Eclipse? Can I get bundle+bnd to generate it, or do I just need to write the
long boring list into the instruction section?
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
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">
<properties>
<bundle.symbolicName>com.basistech.rex2009.common</bundle.symbolicName>
<wrapped.groupId>com.basistech.rex2009</wrapped.groupId>
<wrapped.artifactId>common</wrapped.artifactId>
<wrapped.version>1.0-SNAPSHOT</wrapped.version>
</properties>
<modelVersion>4.0.0</modelVersion>
<groupId>com.basistech.rex2009</groupId>
<artifactId>com.basistech.rex2009.common</artifactId>
<version>1.0-SNAPSHOT</version>
<parent>
<groupId>com.basistech.rex2009</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../parent/pom.xml</relativePath>
</parent>
<name>${bundle.symbolicName} ${wrapped.version} [osgi]</name>
<packaging>bundle</packaging>
<dependencies>
<dependency>
<groupId>${wrapped.groupId}</groupId>
<artifactId>${wrapped.artifactId}</artifactId>
<version>${wrapped.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-stax-api_1.0_spec</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.core</artifactId>
<version>2.5.4.A</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.beans</artifactId>
<version>2.5.4.A</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.context</artifactId>
<version>2.5.4.A</version>
</dependency>
<dependency>
<groupId>org.apache.log4j</groupId>
<artifactId>com.springsource.org.apache.log4j</artifactId>
<version>1.2.15</version>
</dependency>
<dependency>
<groupId>org.codehaus.woodstox</groupId>
<artifactId>com.springsource.com.ctc.wstx</artifactId>
<version>3.2.8</version>
</dependency>
<dependency>
<groupId>odfdom</groupId>
<artifactId>odfdom</artifactId>
<version>0.6.16</version>
</dependency>
<dependency>
<groupId>trove</groupId>
<artifactId>trove</artifactId>
<version>2.0.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<outputDirectory>${eclipse.outputDirectory}</outputDirectory>
<buildcommands>
<java.lang.String>org.eclipse.jdt.core.javabuilder</java.lang.String>
<java.lang.String>org.eclipse.pde.ManifestBuilder</java.lang.String>
<java.lang.String>org.eclipse.pde.SchemaBuilder</java.lang.String>
<java.lang.String>org.eclipse.pde.api.tools.apiAnalysisBuilder</java.lang.String>
</buildcommands>
<projectnatures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
</projectnatures>
<pde>true</pde>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.4.3</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
<Bundle-Version>${wrapped.version}</Bundle-Version>
<_exportcontents>com.basistech.rex2009.*</_exportcontents>
<Embed-Dependency>${wrapped.artifactId};inline=false,trove;inline=false,odfdom;inline=false</Embed-Dependency>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>geronimo.specs</id>
<name>Geronimo Specs</name>
<url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
</repository>
<repository>
<id>com.springsource.repository.bundles.release</id>
<name>SpringSource Enterprise Bundle Repository - SpringSource Bundle
Releases</name>
<url>http://repository.springsource.com/maven/bundles/release</url>
</repository>
<repository>
<id>com.springsource.repository.bundles.external</id>
<name>SpringSource Enterprise Bundle Repository - External Bundle
Releases</name>
<url>http://repository.springsource.com/maven/bundles/external</url>
</repository>
</repositories>
</project>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]