在eclipse中创建Java OSGi项目时,可以通过.bndrun->运行它们。运行OSGi (例如)
当您想要将应用程序分发到客户端时,这似乎并不可行,因为他们不得不在OSGi容器中手动运行捆绑包会带来不便。
有没有办法可以拥有一个" main" jar \ bundle有一个public static void main(String[] args) {}
类,当用户运行这个文件时,它会自动启动一个OSGi容器并加载这些包,好像它都在一个jar文件中一样?
答案 0 :(得分:2)
请参阅OSGi enRoute网站。 Quick Start教程和Base教程解释了如何导出到可执行JAR。如果您使用Maven,请参阅Eval示例。
答案 1 :(得分:1)
您只需使用bndtools中的导出按钮即可。它创建了一个可以分发的可运行的jar。
Bndtools还支持automated build using gradle。
最近bndtools也有maven支持,请参阅this example。