我有一个常规的 maven jar 项目,它具有诸如反射库之类的依赖项,我想将其转换为 osgi,我已经完成了。
- 在不同的(maven)jar 项目中创建了一个通用接口层,并将其作为依赖项添加到包中。
- 将 osgi-module-to-be 的类型更改为“bundle”。
- 创建了 BundleActivator 的实现
- 在 pom 中添加了这个插件:
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.7</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-Activator>my.package.MyServiceActivator</Bundle-Activator>
<Export-Package>
my.package.exp.*
</Export-Package>
<Import-Package>
!org.reflections,???
</Import-Package>
<Embed-Dependency>
slf4j-api;scope=compile,???
</Embed-Dependency>
</instructions>
</configuration>
这里是它丢失的地方,我需要弄清楚“导入包”和“嵌入依赖”,更重要的是如何将它作为 zip 或 ORB(或 Gogo)部署在 glassfish 上,这样它将使用它的所有依赖项 jar 进行部署。
有任何想法吗?
G。
顺便说一句:org.reflections 包还没有准备好 OSGi