Kar*_*och 1 eclipse osgi equinox
我正在尝试安装并将外部包加载到一个简单的equinox应用程序.
目标bundle来自eclipse的一组插件:
http://sourceforge.net/projects/rodin-b-sharp/files/Core_Rodin_Platform/2.4/ ( rodin-2.4-dev.zip),
当我开始昼夜平分点:
$ java -jar org.eclipse.osgi_3.7.1.R37x_v20110808-1106.jar -console
Run Code Online (Sandbox Code Playgroud)
我可以安装它
osgi> install file:///path_to/rodin-2.4-dev/org.eventb.core_2.4.0.r14093.jar
Bundle id is 1
Run Code Online (Sandbox Code Playgroud)
但是当我开始时我有一个例外:
osgi> start 1
org.osgi.framework.BundleException: The bundle "org.eventb.core_2.4.0.r14093 [1]"
could not be resolved. Reason: Missing Constraint: Require-Bundle:
org.eclipse.core.runtime; bundle-version="0.0.0"
Run Code Online (Sandbox Code Playgroud)
有谁知道如何解决这个错误?
也许它与bundle不包含org.eclipse.core.runtime版本的事实有关,因为MANIFEST.MF具有以下Require-Bundle:
Require-Bundle: org.eclipse.core.runtime,org.rodinp.core;visibility:=r
eexport,org.eventb.core.ast;visibility:=reexport,org.eventb.core.seqp
rover;visibility:=reexport
Run Code Online (Sandbox Code Playgroud)
正如您所注意到的,捆绑包对运行时核心有要求.安装只是安装捆绑包,并不意味着它是有效的.您可以通过diag命令检查捆绑包的状态,即osgi> diag 1
它需要在状态下解析为可运行.我敢打赌它只是为你安装状态.检查Dude,我的捆绑包中有关捆绑及其状态的更多信息.