我编写了一个RCP应用程序,其中包含我使用Ganymede 3.4.2版创建的大量插件。我想开始使用伽利略。当我尝试从使用Ganymede创建的工作区执行我的RCP应用程序时,我收到了很多错误,如下所示:
!SESSION 2009-09-09 10:41:33.907 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_12 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US Framework arguments: -product com.bah.gs.arts.jekyll.product Command-line arguments: -product com.bah.gs.arts.jekyll.product -data C:\Workspace/../runtime-jekyll.product -dev file:C:/Workspace/.metadata/.plugins/org.eclipse.pde.core/jekyll.product/dev.properties -os win32 -ws win32 -arch x86 !ENTRY org.eclipse.equinox.app 0 0 2009-09-09 10:41:35.469 !MESSAGE Product com.bah.gs.arts.jekyll.product could not be found. !ENTRY org.eclipse.osgi 2 0 2009-09-09 10:41:35.500 !MESSAGE One or more bundles are not resolved because the following root constraints are not resolved: !SUBENTRY 1 org.eclipse.osgi 2 0 2009-09-09 10:41:35.500 !MESSAGE Bundle initial@reference:file:../../Common/plugins/org.eclipse.core.databinding_1.2.0.I20090604-2000.jar/ was not resolved. !SUBENTRY 2 org.eclipse.core.databinding 2 0 2009-09-09 10:41:35.500 !MESSAGE Missing required bundle org.eclipse.core.databinding.observable_[1.2.0,2.0.0). !SUBENTRY 2 org.eclipse.core.databinding 2 0 2009-09-09 10:41:35.500 !MESSAGE Missing required bundle org.eclipse.core.databinding.property_[1.2.0,2.0.0). !SUBENTRY 1 org.eclipse.osgi 2 0 2009-09-09 10:41:35.500 !MESSAGE Bundle initial@reference:file:../../Common/plugins/org.eclipse.jface.databinding_1.3.0.I20090525-2000.jar/ was not resolved. !SUBENTRY 2 org.eclipse.jface.databinding 2 0 2009-09-09 10:41:35.500 !MESSAGE Missing required bundle org.eclipse.core.databinding.property_[1.2.0,2.0.0). !SUBENTRY 2 org.eclipse.jface.databinding 2 0 2009-09-09 10:41:35.500 !MESSAGE Missing required bundle org.eclipse.core.databinding.observable_[1.2.0,2.0.0). !SUBENTRY 1 org.eclipse.osgi 2 0 2009-09-09 10:41:35.500 !MESSAGE Bundle initial@reference:file:../../Common/plugins/org.eclipse.ui.workbench_3.5.0.I20090603-2000.jar/ was not resolved. !SUBENTRY 2 org.eclipse.ui.workbench 2 0 2009-09-09 10:41:35.500 !MESSAGE Missing required bundle org.eclipse.core.databinding.property_[1.2.0,2.0.0). !SUBENTRY 2 org.eclipse.ui.workbench 2 0 2009-09-09 10:41:35.500 !MESSAGE Missing required bundle org.eclipse.core.databinding.observable_[1.2.0,2.0.0).
为什么从一个Eclipse版本升级到另一个版本如此痛苦?
有解决上述问题的系统方法吗?
是否有可用的“最佳做法”升级程序?
感谢您的帮助。
After trying what VonC suggested I am still experiencing some problems. This is the constraint part of the MANIFEST.MF for the RCP application: Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Require-Bundle: org.eclipse.core.runtime;bundle-version="3.5.0";resolution:=optional;visibility:=reexport, org.eclipse.ui;bundle-version="3.5.0";resolution:=optional;visibility:=reexport, org.eclipse.core.expressions;bundle-version="3.4.100";resolution:=optional;visibility:=reexport What is the significance of the "visibility:=reexport" and "resolution:=optional" parameters? Error messages: org.eclipse.core.databinding Missing Constraint:Required-Bundle: org.elclipse.core.databinding.observable;require-version="[1.2.0.2.0.0]" Missing Constraint:Required-Bundle: org.elclipse.core.databinding.property;require-version="[1.2.0.2.0.0]" Same two messages for: org.eclipse.jface.databinding org.eclipse.ui.workbench
答案 0 :(得分:1)
您列出的错误表明Galileo没有看到Ganymede和您的程序正在使用的所有插件和库。对不起,下面没有回答。你的另一种选择是摆弄Galileo,直到它看到你所有的库和插件。
我要做的是安装Galileo并排Ganymede,并逐个移植您的应用程序。我假设您在Windows下工作,但我在此处列出的相同技术也适用于Linux。
首先,从理论上讲,从Ganymede升级到Galileo所需要做的就是在Ganymede上安装Galileo。相信?好。我也没有。然后浏览Ganymede并记下您安装的插件。然后将Galileo安装在单独的目录中。将新安装指向Java VM。然后安装所有插件。您可以选择如何执行此操作。
最后,我将在您的项目中区分source和Meta。在Galileo下创建一个新项目并仅移动您的源。让伽利略重建你的元。
现在,如何避免下次所有这些痛苦:版本控制。 CVS,SVN,git ......你使用什么并不重要。 Eclipse有一个支持它们的插件。然后,下次升级,只需将源导入到新Eclipse安装中的项目中。更不痛苦,你可以更好地控制你的来源。
祝你好运。答案 1 :(得分:0)
我使用eclipse开发Java,Python和PHP代码。我正在使用Ganymede做这一切,直到我想升级到Galileo。升级非常简单。这些是我遵循的步骤:
此时我遇到了一些问题,因为Ganymede和Galileo插件的插件/不兼容问题已经过时了。然而,一些最小的谷歌搜索帮助我解决了这些问题。
Galileo是我做过的最干净,最直接的安装之一,我从来没有弄过eclipse.ini