如何从Eclipse Ganymede升级到Eclipse Galileo?

时间:2009-09-11 15:25:11

标签: eclipse-rcp

我编写了一个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

2 个答案:

答案 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。升级非常简单。这些是我遵循的步骤:

  1. 在卸载Ganymede不会影响它的地方备份工作区。
  2. 将所有软件站点复制到文本文件中,并使用工作区备份该文本文件。
  3. 卸载Ganymede。
  4. 安装Galileo。
  5. 在我的情况下,工作区没有被更改,我将Galileo指向同一个工作区,因此我的所有项目和文件仍然存在。
  6. 从文本文件中注明的更新站点更新Galileo中的所有插件和扩展程序。
  7. 此时我遇到了一些问题,因为Ganymede和Galileo插件的插件/不兼容问题已经过时了。然而,一些最小的谷歌搜索帮助我解决了这些问题。

    Galileo是我做过的最干净,最直接的安装之一,我从来没有弄过eclipse.ini