如何更改Eclipse OSGi Framework Launcher使用的OSGi Launcher Jar

时间:2016-04-11 18:13:34

标签: java eclipse osgi launcher equinox

在我们的项目中,我们使用的是IBM J9 Java VM和旧版本的Equinox OSGi框架(org.eclipse.osgi_3.6.1.R36x_v20100806.jar)。是否可以将此组合与Eclipse OSGi Framework启动程序一起使用?我尝试过查看的东西,却找不到办法。

当我启动OSGi框架运行配置并检查执行的命令行时,我可以看到以下内容:

"E:\SVN\trunk3\j9\2.4_ppro11\win32\bin\j9"
"-Dcom.ibm.oti.vm.exe=E:\SVN\trunk3\j9\2.4_ppro11\win32\bin/j9"
"-Djava.home=E:\SVN\trunk3\j9\2.4_ppro11\win32\bin/.."
"-Dcom.ibm.oti.vm.bootstrap.library.path=E:\SVN\trunk3\j9\2.4_ppro11\win32\bin/"
"-Djava.library.path=E:\SVN\trunk3\j9\2.4_ppro11\win32\bin"
-Xjcl:jclfoun11_24
-Dosgi.noShutdown=true
-Declipse.ignoreApp=true
-Declipse.enableStateSaver=false
-Dorg.osgi.framework.bootdelegation=javax.*
-Dfile.encoding=Cp1252
-classpath E:\Eclipse\eclipse-java-mars-2-win32-x86_64\plugins\org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar org.eclipse.equinox.launcher.Main
-dev "file:E:/SVN/trunk3/.metadata/.plugins/org.eclipse.pde.core/Internal/dev.properties"
-configuration "file:E:/SVN/trunk3/.metadata/.plugins/org.eclipse.pde.core/Internal/"

有趣的一行是结尾的第三行(-classpath ...)。你可以看到启动器在我的Eclipse安装中执行Equinox jar。

是否可以更改此设置,以便启动器将执行我的OSGi启动器?

e.g。

-classpath E:\SVN\trunk3\osgi\org.eclipse.osgi_3.6.1.R36x_v20100806.jar org.eclipse.equinox.launcher.Main

1 个答案:

答案 0 :(得分:0)

OSGi启动器也应该能够运行旧的Equinox版本。它搜索org.eclipse.equinox.launcher包以在这些地方启动OSGi运行时(按此顺序):

  • 工作区
  • 目标平台
  • 正在运行的Eclipse实例的已安装捆绑包中

如果您在目标平台中放置Equinox 3.6.1的启动器捆绑包,则框架应该启动。