gogo:osg控制台中的CommandNotFoundException

时间:2016-05-19 02:46:23

标签: java eclipse eclipse-plugin osgi

我通过OSGI控制台尝试了很多命令,但没有一个正在执行。

osgi> bundle
gogo: CommandNotFoundException: Command not found: bnl
osgi> bnl
gogo: CommandNotFoundException: Command not found: udebl
osgi> udebl
gogo: CommandNotFoundException: Command not found: el
osgi> el
gogo: CommandNotFoundException: Command not found: nudbe
osgi> nudbe
gogo: CommandNotFoundException: Command not found: lnudbe
osgi> lnudbe
gogo: CommandNotFoundException: Command not found: lnudbe
osgi> c
gogo: CommandNotFoundException: Command not found: c
osgi> 

我是OSGI的新手,昨天就开始了。我正在阅读教程 http://www.javaworld.com/article/2077837/java-se/java-se-hello-osgi-part-1-bundles-for-beginners.html

我跟着这篇文章跑了我的第一个hello world程序。我得到了理想的输出但是很多例外。

我是否需要在我的eclipse中进行一些更改才能开始插件开发?

请回复。

2 个答案:

答案 0 :(得分:0)

bundle是由org.eclipse.equinox.console捆绑提供的特定于Equinox的命令。控制台命令由各种捆绑包提供,但是需要为要注册的命令启动这些捆绑包。您可以使用help查看当前注册的命令。

您可能无法加载org.eclipse.equinox.console捆绑包,或者尚未启动它。请尝试以下操作来启动捆绑包:

osgi> help bundle
osgi> ss org.eclipse.equinox.console
"Framework is launched."


id  State       Bundle
104 RESOLVED    org.eclipse.equinox.console_1.1.200.v20150929-1405
osgi> start 104
osgi> ss org.eclipse.equinox.console
"Framework is launched."


id  State       Bundle
104 ACTIVE      org.eclipse.equinox.console_1.1.200.v20150929-1405
osgi> help bundle

bundle - display details for the specified bundle(s)
   scope: equinox
   parameters:
      Bundle[]   (<id>|<location>)

默认情况下,Equinox不会自动启动所有捆绑包。如果您正在尝试直接运行Equinox(java -Dosgi.bundles=bundle1,bundle2,bundle3 -jar …/org.eclipse.osgi_*.jar),请在捆绑后追加:start以使其自动启动。

答案 1 :(得分:0)

最后我想通了。 命令没有错。我缺少一些我需要手动下载和添加的库 我遵循了这个Equinox start error (console bundle is missed)

Dmytro Pishchukhin给出的答案解决了我的问题。

感谢您的建议。 :)