0

我只知道这个工具(bnd 工具)的存在,它似乎完美地解决了我在开发的 OSGI 应用程序中遇到的问题。我一直在阅读一些关于它的文档,但我必须做点什么错误的。

我在上述应用程序中遇到问题,在我无法激活的捆绑包上(OSGI 捆绑包无法启动),并按照我之前帖子中其他用户的建议,我决定尝试使用 bnd 工具来解决它。在我的项目文件夹中,我创建了一个新的运行描述符(新建 > 运行描述符),在将其命名为“运行”后,我选择了带有 Gogo Shell 的 Apache Felix 4,然后单击完成。

现在,当我打开 run.bndrun 文件时,我收到以下 2 条错误消息:

存储库列表:无法加载 OSGI 存储库。找不到工作区:/home/user/proj/sm/workspace OSGI 框架:无法加载 OSGI 框架列表。从以下位置找不到工作区:/home/user/proj/sm/workspace

该文件的内容如下:

-runfw: org.apache.felix.framework;version='[4,5)'
-runee: JavaSE-1.6
-runsystemcapabilities: ${native_capability}

-resolve.effective: active

-runbundles:\
    org.apache.felix.gogo.runtime,\
    org.apache.felix.gogo.shell,\
    org.apache.felix.gogo.command

-runrequires:\
    osgi.identity;filter:='(osgi.identity=org.apache.felix.gogo.shell)',\
    osgi.identity;filter:='(osgi.identity=org.apache.felix.gogo.command)'

我该如何解决这两个错误?我可以按照我想要的方式使用 bnd 工具吗?

4

1 回答 1

1

你能显示确切的错误信息吗?看起来你有一个设置错误。bnd 尝试找到与您的项目相关的设置。如果您只是应用默认值,这应该是不可能的。您在文件系统上的工作区应如下所示:

cnf/
  build.bnd
  ..
my.project
  src/
  bin/
  test/
  bin_test/
  ...
于 2014-03-17T16:59:47.857 回答