我只知道这个工具(bnd工具)的存在,这似乎是解决我正在开发的OSGI应用程序中遇到的问题的完美。我一直在阅读有关它的一些文档,但我必须做错了。
我在上述应用程序中遇到问题,在我无法激活的软件包(OSGI bundle is unable to start)上,并且在我之前的帖子中关注其他用户的建议,我决定尝试使用bnd工具解决它。在我的项目文件夹中,我创建了一个新的运行描述符(新的>运行描述符),在命名为'run'之后,我选择Apache Felix 4和Gogo Shell,然后单击Finish。
现在,当我打开run.bndrun文件时,我得到了这两个错误消息:
存储库列表:无法加载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工具吗?
答案 0 :(得分:1)
您能否显示完全错误消息。看起来你有一个设置错误。 bnd尝试找到相对于项目的设置。如果你只是应用默认值,这是不可能的。您在文件系统上的工作空间应如下所示:
cnf/
build.bnd
..
my.project
src/
bin/
test/
bin_test/
...