我有一个项目,它使用maven- bundle -plugin生成一个OSGI包。配置如下所示:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.1.0</version>
<extensions>true</extensions>
<inherited>true</inherited>
<configuration>
<instructions>
<Export-Package>${bubble.osgi.exports}</Export-Package>
<Import-Package>${bubble.osgi.imports}</Import-Package>
<Embed-Dependency>${bubble.osgi.embed.dependencies}</Embed-Dependency>
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
</instructions>
<versions>
<bubble.osgi.version.clean>${project.version}</bubble.osgi.version.clean>
</versions>
</configuration>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>cleanVersions</goal>
</goals>
</execution>
</executions>
</plugin>该项目的结果是一个包含所有osgi内容、嵌入式依赖项等的jar文件。我更希望有2个jar作为结果,一个包含osgi,另一个没有,因为嵌入的依赖关系在使用它时会造成问题,就像普通的jar一样。
除了使用maven程序集插件之外,还有其他方法吗?
发布于 2010-12-07 11:16:28
您可以将maven-bundle-plugin配置移动到单独的配置文件中,并使用以下内容
mvn包-Posgi或默认。但每建造一件艺术品就只有一个。
发布于 2011-02-02 15:44:13
我建议使用两个不同的pom.xml文件(在项目中),这将产生两个不同的工件。
默认的pom.xml应该生成普通库,如foo:bar:1.0.0
另一个pom-osgi.xml应该生成类似于pom-osgi.xml的OSGi库
使用另一个pom使用构建库
mvn -f pom-osgi.xml installhttps://stackoverflow.com/questions/4374275
复制相似问题