我通过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中进行一些更改才能开始插件开发?
请回复。
答案 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给出的答案解决了我的问题。
感谢您的建议。 :)