Arc*_*ano 17 osgi tycho maven maven-bundle-plugin
使用Maven开发OSGi应用程序时有两种主要方法:POM-first和MANIFEST first.
我正在寻找一个表格形式的答案,显示每种方法的优缺点.
更具体地说,我也想知道它与以下内容的关系:
Arc*_*ano 19
目前这是我能想到的
POM-First Pros(使用maven-bundle-plugin)
POM-First Cons
ClassNotFoundException更有可能在运行时发生.但是,这可以通过pax-exam来缓解(尽管设置起来非常复杂).instructions正确设置配置元素.MANIFEST-first Pros(使用tycho-maven-plugin)
ClassNotFoundException在JUnit测试期间而不是运行时出现.MANIFEST-first Cons
如果我被要求为已经使用Maven并希望转移到OSGi的企业提出建议,那么它将首先是POM
如果我被要求为正在进行Eclipse插件开发的人推荐,那么它首先是Manifest - 使用tycho
我认为你应该通过用例选择.对于服务器端OSGi项目,我赞成pom第一种风格.它很好地匹配maven构建,并且比Manifest首先更容易出错.实际上,mand bundle插件背后的bnd在没有任何额外配置的情况下获得了大多数情况下的Manifest.诀窍是使用一些命名规则.例如,如果您将内部包名称impl或内部命名,则不会导出.使用这种风格你不能使用Eclipse插件透视图(至少没有我不喜欢的bndtools),但我还没有错过这个观点.我是Apache Karaf,CXF和Camel项目的开发人员,我们使用这种风格,效果很好.特别是对于CXF和Camel,我们可以使用相同的构建和工具来支持OSGi和非OSGi部署.
对于Eclipse RCP应用程序,Manifest首先是您需要插件透视图和Eclipse IDE工具的方法.如果你想将它与maven结合起来,那么tycho可能就是你要走的路.
| 归档时间: |
|
| 查看次数: |
5164 次 |
| 最近记录: |