在您的模块的NBM文件中检查info/info.xml中定义的群集。
- 如果它有错误或缺失的值,则必须查看模块的POM配置为什么是这样。它要么在pom.xml或不推荐的src/main/nbm/module.xml中定义不好
- 该模块可能最终进入“ IDE”群集,因为您在应用程序中定义了defaultcluster参数
这就是当前NBM-Maven-Plugin中模块的行为。对于OSGI捆绑,该行为更加流畅,因为束罐不包含二进制中的群集信息。
题
这似乎是一件简单的事情,但是我无法弄清楚为什么我创建的一些模块最终以不同的群集(即IDE)和其他品牌代币在集群上。
在品牌令牌下显示的唯一模块具有此配置:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>nbm-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<moduleType>autoload</moduleType>
<codeNameBase>com.validation.manager.h2/1</codeNameBase>
<publicPackages>
<publicPackage>org.h2.*</publicPackage>
</publicPackages>
</configuration>
</plugin>
其他人看起来像这样:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>nbm-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<moduleType>eager</moduleType>
<codeNameBase>com.validation.manager.ui/1</codeNameBase>
</configuration>
</plugin>
如您所见,除了模块类型和是否有公共软件包之外,几乎没有任何差异。
该应用程序正常工作,只是让我困惑的事情。
有任何想法吗?
解决方案
在您的模块的NBM文件中检查info/info.xml中定义的群集。
这就是当前NBM-Maven-Plugin中模块的行为。对于OSGI捆绑,该行为更加流畅,因为束罐不包含二进制中的群集信息。