Eclipse RCP OSGi冲突org.mortbay.jetty

时间:2013-01-25 15:49:28

标签: eclipse-rcp osgi osgi-bundle

启动Eclipse RCP应用程序时,遇到以下错误:

!MESSAGE Bundle org.eclipse.equinox.http.jetty_2.0.0.v20090520-1800 [154]未解决。 !SUBENTRY 2 org.eclipse.equinox.http.jetty 2 0 2013-01-21 17:31:55.618 !MESSAGE包使用冲突:Import-Package:org.mortbay.jetty;版本= “[6.1.0,7.0.0)”

这导致了一个问题,即在RCP应用程序中,无法启动帮助系统(由于ClassNotFoundException)。

据我了解,捆绑org.mortbay.jetty存在一些问题,因为它存在于错误的版本或多个不正确的版本中。所以我用程序参数-console启动了我的Eclipse RCP应用程序,以获得一个OSGi控制台。

我输入

osgi> packages org.mortbay.jetty

了解此包的所有导入和导出。这给了我以下结果:

org.mortbay.jetty; version="6.1.15"<org.mortbay.jetty.server_6.1.15.v200905151201 [491]>

但这对我来说似乎没问题。显然,org.mortbay.jetty由org.mortbay.jetty.server导出,其导出版本为6.1.15,范围为[6.1.0,7.0.0]。此外,当我的同事尝试启动应用程序时,他们没有遇到任何问题。

我还试图为RCP应用程序使用一个新的工作区,但这也没有帮助......我现在真的很无能......

2 个答案:

答案 0 :(得分:1)

问题已修复,在启动配置中,未检查某些重要插件是否已启动。实际上,我需要从基于功能的配置切换到基于插件的配置。

请参阅:http://www.eclipse.org/forums/index.php/m/631827/

答案 1 :(得分:0)

我有一段时间和码头有同样的问题。

溶液:

1)如果你使用基于插件的eclipse rcp应用程序 - &gt;删除插件版本(主要/主要) 或

2)如果您使用的是基于功能的rcp应用程序 - &gt;确保set match =“compatible”