解决Eclipse进行OSGI调试时出现Could not find bundle: org.eclipse.equinox.console的问题

故障现象

Eclipse下OSGi开发,运行测试时,程序直接报错,堆栈信息显示:Could not find bundle: org.eclipse.equinox.console

解决办法

参考资料 : stackoverflow

This is because the default shell of Eclipse has been moved to “Apache Felix Gogo”; so the necessary bundles must be added to the “Run Configuration” before running. Followings are the four bundled that you need to select from the list:
- org.apache.felix.gogo.command_0.10.0v.jar
- org.apache.felix.gogo.runtime_0.10.0v.jar
- org.apache.felix.gogo.shell_0.10.0v.jar
- org.eclipse.equinox.console_1.0.100.jar

解释说明:
根据 stackoverflow 上的解释是:Eclipse下默认的shell已经迁移到“Apache Felix Gogo”之下,所以在OSGi开发时的bundles在执行时,必须在“Run Configuration”中添加必要的依赖bundles,以下4项是必须的:

  • org.apache.felix.gogo.command_0.10.0v.jar
  • org.apache.felix.gogo.runtime_0.10.0v.jar
  • org.apache.felix.gogo.shell_0.10.0v.jar
  • org.eclipse.equinox.console_1.0.100.jar

所以,“Run Configuration”–> “Bundles” –> “Target Platform” –> 勾选以上4个依赖bundles
就OK了

你可能感兴趣的:(IDE,eclipse,osgi,shell,调试)