java - 如何用maven生成OSGI模块?

标签 java maven osgi

是否可以使用 maven 生成 OSGI 模块? 通常我可以生成一个像

这样的项目
mvn -B archetype:generate \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DgroupId=com.my.company \
  -DartifactId=hello-world

是否有类似的方法来获取 OSGI 模块?

最佳答案

不确定。原型(prototype)可能有点过时了。我只是创建一个普通的 Maven 项目并添加 bnd-maven-plugin在父级(see here for an example)。

或者,您可以使用 maven-bundle-plugin。 See here .

<plugin>
    <groupId>biz.aQute.bnd</groupId>
    <artifactId>bnd-maven-plugin</artifactId>
    <version>3.2.0</version>
    <executions>
        <execution>
            <goals>
                <goal>bnd-process</goal>
            </goals>
        </execution>
    </executions>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.5</version>
    <configuration>
        <archive>
            <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
        </archive>
    </configuration>
</plugin>

有了这个礼物,您所有的模块都将是 bundle 。如果您需要调整 Manifest 设置,那么您可以在模块中创建一个 bnd.bnd 文件。您可以手动或使用 bndtools bnd 文件编辑器对其进行编辑。

关于java - 如何用maven生成OSGI模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40979047/

相关文章:

java - OSGI OBR 存储库托管?

Java equals 方法和加密字符串

java - 如何将数据传输到连接的蓝牙 LE 设备

java - 使用带有范围查找的 JTS 对多边形进行矢量化

java - 在 Karaf OSGI 中,我收到抛出异常的包中的类的 ClassNotFoundException

JAX-WS 与 Equinox OSGi

java - 为什么这个线程连续运行多次?

java - 如何从 recyclerView 和 sqlite 数据库中删除行?

java - Maven 不运行我的 testng.xml

java - Maven 是否使编写测试套件的需要变得过时了?