我创建了一个插件和功能项目(用于插件)。我正在使用tycho(maven)来构建它。我能够成功构建它。现在我想打包到osgi包(plugin.jar,feature.jar,artifacts.jar,content.jar)。为此,我使用 p2-maven-plugin 但我不知道如何将plugin.jar和feature.jar指定到osgi项目的pom.xml中(创建osgi包)。
下面是我创建osgi包的pom.xml:
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.exililty.tycho</groupId>
<artifactId>com.exility.plugin.osgi</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<groupId>org.reficio</groupId>
<artifactId>p2-maven-plugin</artifactId>
<version>1.1.2-SNAPSHOT</version>
<executions>
<execution>
<id>default-cli</id>
<configuration>
<artifacts>
<!-- specify your depencies here -->
<!-- groupId:artifactId:version -->
<artifact>
<id> </id>
</artifact>
<artifact>
<id> </id>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<pluginRepositories>
<pluginRepository>
<id>reficio</id>
<url>http://repo.reficio.org/maven/</url>
</pluginRepository>
</pluginRepositories>
</project>
我可以插入插件和功能jar作为工件吗?如何将插件jar指定到pom.xml中。请帮忙!
答案 0 :(得分:1)
p2-maven-plugin用于创建具有分类插件/功能的P2 Target存储库,而不是OSGi包。我希望这能说明这个maven插件的目的是什么。如果您的任务是创建P2 Target存储库,那么您可以按照p2-maven-plugin示例中的描述定义添加功能:
<configuration>
<artifacts>
<artifact><id>org.apache.commons:commons-lang3:3.1</id></artifact>
</artifacts>
<features>
<artifact>
<id>org.reficio:test.feature:1.0.0</id>
<source>false</source>
<transitive>false</transitive>
</artifact>
</features>
</configuration>