我已经安装了Eclipse Juno Service Release 2.我正在尝试使用eclipse中的Equinox容器学习OSGi。但是,当我尝试使用以下代码从命令提示符启动Equinox时,它无法启动。有人可以告诉我这里缺少什么吗?
java -jar org.eclipse.osgi_3.8.2.v20130124-134944.jar -console
谢谢!
答案 0 :(得分:3)
我从3.5到3.8.2时遇到了同样的问题。他们改变了控制台的实现,现在依赖于felix gogo project。 您需要启动以下捆绑包以及标准的equinox:
您可以将它们添加到捆绑包列表中,默认情况下在config.ini
文件中启动,如下所示:
#contents of config.ini
osgi.bundles=org.eclipse.equinox.console_1.0.100.v20121001-124408.jar@start,org.apache.felix.gogo.shell_0.10.0.v201211091412.jar@start,org.apache.felix.gogo.runtime_0.10.0.v201209301036.jar@start,org.apache.felix.gogo.command_0.10.0.v201209301215.jar@start
您的目录结构应为
- org.eclipse.osgi_3.8.2.v20130124-134944.jar
- configuration/
config.ini
答案 1 :(得分:1)
是的,我看到了同样的行为。阅读了一些初学者教程(是的,我是初学者:-) at OSGi with Equinox for beginners: console, launcher and configuration我发现默认情况下会将日志发送到日志文件,要在stdout中查看它们,您需要-consoleLog参数
java -jar org.eclipse.osgi_3.8.2.v20130124-134944.jar -console -consoleLog
然后告诉我消息
org.osgi.framework.BundleException: Could not find bundle: org.eclipse.equinox.console
我用谷歌搜索了导致我到这里的地方:org.osgi.framework.BundleException: Could not find bundle: org.eclipse.equinox.console。我没试过,但它看起来像你需要的解决方案。