如何在apache karaf中安装和运行osgi bundle

Moo*_*lit 7 java apache osgi bundle

我有一个简单的问题.我按照本教程创建了一个HelloWorld osgi包.如何使用apache Karaf安装和启动此捆绑包?如何使用osgi:install命令引用bundle?

谢谢.

Fra*_*Lee 6

您可以将捆绑包放入"deploy"目录,而Karaf只是注意并安装它.


Fra*_*Lee 5

好的,这是另一个问题,但是这里有:

你几乎走在正确的轨道上,我已经测试了你链接到的Karaf开发者指南中的那个(第二个 mvn调用).文档不太正确,我需要改变两件事:

  • 该版本已关闭,2.2.5确实有效(在我的机器上),将其更改为2.2.8似乎有所帮助.
  • 包名称是com.mycompany.package.由于package是一个关键字,不会编译,因此我将其更改为com.mycompany.bundle.

所以我的archetype命令是:

mvn archetype:generate \
-DarchetypeGroupId=org.apache.karaf.archetypes \
-DarchetypeArtifactId=karaf-bundle-archetype \
-DarchetypeVersion=2.2.8 \
-DgroupId=com.mycompany \
-DartifactId=com.mycompany.bundle \
-Dversion=1.0-SNAPSHOT \
-Dpackage=com.mycompany.bundle
Run Code Online (Sandbox Code Playgroud)

然后我进入了新制作的项目文件夹:com.mycompany.bundle:

cd com.mycompany.bundle
Run Code Online (Sandbox Code Playgroud)

和mvn安装:

mvn install
Run Code Online (Sandbox Code Playgroud)

然后在'target /'文件夹中有一个jar文件,你可以像我之前说的那样安装到Karaf安装中.

在Eclipse中创建一个包

  • 新建 - >插件项目 - >选择名称 - >检查参数 - >如果您愿意,可以使用模板.

  • 选择项目 - >导出 - >插件/片段 - >选择一个文件夹

这是你的jar文件.