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.

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>

Reply via email to