【发布时间】:2015-08-18 05:14:13
【问题描述】:
当我在对项目中的源代码进行更改后尝试更新我的 OSGI 包时,更新后看不到任何更改只有当我在我的 pom.xml 中指定多个导出包时 .运行更新时没有产生错误。
我的项目中有两个包
- com.comp.package.a
- com.comp.package.b
当我在 pom.xml <Export-Package>com.comp.package.a</Export-Package> 中仅指定一个导出包时,我对源代码所做的任何更改在运行更新后成功包含在包中。但是,当我将第二个包添加到导出 <Export-Package>com.comp.package.a, com.comp.package.b</Export-Package> 时,运行更新后看不到我对源代码所做的任何更改。
谁能解释这里发生了什么?
注意:在我的 pom.xml 中所做的更改总是在更新运行后包含在内,只有对源代码的更改没有被拾取。例如,如果我从<Export-Package> 中添加/减去包,则会获取这些更改。
【问题讨论】:
-
当您说“运行更新”时,您的意思是“执行 OSGI
update命令”吗? -
是的,没错。
-
您是说捆绑清单标头更新,但不更新捆绑内容?您说您看到“源代码没有任何变化”。这是否意味着您将源代码嵌入到包中,或者您是在调试模式下查看它吗?或者你是在推断来源并没有因为它的行为而改变?
-
我推断它并没有因为行为而改变。
-
我明白了。两个export之间有uses:约束吗?
标签: java maven osgi osgi-bundle