Eclipse应用程序未加载必需的bundle

时间:2017-01-24 12:51:32

标签: osgi eclipse-rcp

我有一个基于Eclipse RCP的应用程序,它依赖于需要sun.misc的bundle。在开始时,它没有解决,因为它找不到包:

id  State       Bundle
150 INSTALLED   org.diirt.support.diirt-pva_3.1.6.20170118092719
osgi> start 150
gogo: BundleException: Could not resolve module: org.diirt.support.diirt-pva [150]
Unresolved requirement: Import-Package: org.epics.pvaccess; version="[4.1.0,5.0.0)"
    -> Export-Package: org.epics.pvaccess; bundle-symbolic-name="org.epics.pvAccessJava"; bundle-version="4.1.3"; version="4.1.3"; uses:="org.epics.pvdata.pv"
       org.epics.pvAccessJava [307]
         Unresolved requirement: Import-Package: sun.misc

同时,内置产品的插件目录中的com.diffplug.osgi.extension.sun.misc_0.0.0.jar。这提供了包sun.misc

Manifest-Version: 1.0
Export-Package: sun.misc
Fragment-Host: system.bundle; extension:=framework
Bundle-ManifestVersion: 2
Bundle-License: public domain - http://unlicense.org/
Bundle-SymbolicName: com.diffplug.osgi.extension.sun.misc
Bundle-Version: 0.0.0

但是,应用程序启动时不会加载:

osgi> ss diff
"Framework is launched."


id  State       Bundle

为什么这个必需的包没有加载?

顺便提一下,此插件是产品中包含的功能所必需的。

1 个答案:

答案 0 :(得分:0)

据我所知,sun.misc应该可以解析为com.diffplug.osgi:com.diffplug.osgi.extension.sun.misc:0.0.0 也许你可以尝试将它添加到你的项目中?