【问题标题】:How Do You Upgrade From Eclipse Ganymede to Eclipse Galileo?如何从 Eclipse Ganymede 升级到 Eclipse Galileo?
【发布时间】:2009-09-11 15:25:10
【问题描述】:

我编写了一个 RCP 应用程序,其中包含我使用 Ganymede 3.4.2 版创建的许多插件。我想开始使用伽利略。当我尝试从使用 Ganymede 创建的工作区执行我的 RCP 应用程序时,我收到很多错误,如下所示:

!会话 2009-09-09 10:41:33.907 -------------------------------------------------- --------- eclipse.buildId=未知 java.version=1.6.0_12 java.vendor=Sun Microsystems Inc. BootLoader 常量:OS=win32、ARCH=x86、WS=win32、NL=en_US 框架参数:-product com.bah.gs.arts.jekyll.product 命令行参数:-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 产品 com.bah.gs.arts.jekyll.product 找不到。 !ENTRY org.eclipse.osgi 2 0 2009-09-09 10:41:35.500 !MESSAGE 一个或多个捆绑包未解决,因为以下根约束未解决: !子条目 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/ 未解决。 !SUBENTRY 2 org.eclipse.core.databinding 2 0 2009-09-09 10:41:35.500 !MESSAGE 缺少必需的包 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 缺少必需的捆绑包 org.eclipse.core.databinding.property_[1.2.0,2.0.0)。 !子条目 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/ 未解决。 !SUBENTRY 2 org.eclipse.jface.databinding 2 0 2009-09-09 10:41:35.500 !MESSAGE 缺少必需的捆绑包 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 缺少必需的包 org.eclipse.core.databinding.observable_[1.2.0,2.0.0)。 !子条目 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/ 未解决。 !SUBENTRY 2 org.eclipse.ui.workbench 2 0 2009-09-09 10:41:35.500 !MESSAGE 缺少必需的捆绑包 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 缺少必需的包 org.eclipse.core.databinding.observable_[1.2.0,2.0.0)。


为什么从一个 Eclipse 版本升级到下一个版本如此痛苦?

是否有解决上述问题的系统方法?

是否有可用的“最佳实践”升级程序?

感谢您的帮助。

在尝试了 VonC 的建议后,我仍然遇到了一些问题。 这是 RCP 应用程序的 MANIFEST.MF 的约束部分: Bundle-RequiredExecutionEnvironment:JavaSE-1.6 要求捆绑: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 “visibility:=reexport”和“resolution:=optional”参数的意义是什么? 错误信息: org.eclipse.core.databinding 缺少约束:Required-Bundle:org.elclipse.core.databinding.observable;require-version="[1.2.0.2.0.0]" 缺少约束:Required-Bundle:org.elclipse.core.databinding.property;require-version="[1.2.0.2.0.0]" 同样的两条消息: org.eclipse.jface.databinding org.eclipse.ui.workbench

【问题讨论】:

  • org.elclipse.... ?那不应该是“org.eclipse....”
  • 只是我输入文本时的错字。我可以从错误窗口剪切和粘贴。

标签: eclipse-rcp


【解决方案1】:

您列出的错误表明 Galileo 没有看到 Ganymede 和您的程序正在使用的所有插件和库。对不起,下面没有答案。您的替代方案是摆弄 Galileo,直到它看到您所有的库和插件。

我要做的是并排安装 Galileo Ganymede,然后一次移植一个以上的应用程序。我假设您在 Windows 下工作,但我在此处列出的相同技术也适用于 Linux。

首先,理论上,从 Ganymede 升级到 Galileo 所需要做的就是在 Ganymede 上安装 Galileo。相信?好的。我也没有。因此,浏览 Ganymede 并注意您安装了哪些插件。然后将 Galileo 安装在一个单独的目录中。将新安装指向您的 Java VM。然后安装所有插件。您可以选择如何执行此操作。

最后,我将在您的项目中区分源代码和元数据。在 Galileo 下创建一个新项目并仅移动您的源。让 Galileo 重新构建您的元数据。

现在,下一次如何避免所有这些痛苦:版本控制。 CVS、SVN、git……用什么都无所谓。 Eclipse 有一个支持所有这些的插件。然后,下一次升级,只需将源代码导入新安装的 Eclipse 中的项目中。痛苦少得多,而且您可以更好地控制您的来源。

祝你好运。

【讨论】:

  • 感谢您的回复。我确实拥有版本控制中的所有内容。因此,根据您的建议,我应该:在 Galileo 下创建一个新项目。湾。导入源代码。让 Galileo 创建元数据。
  • 是的。这就是我在工作中使用 Eclipse 和 CVS 的方法。如果您最终遇到相同的错误,则问题是缺少插件或库。恐怕我对此没有任何提示。当这种情况发生在我身上时,我很不耐烦,我重新安装了 Galileo,然后手动下载并应用了我需要的插件和库。我可能本来可以使用 Eclipse 的插件管理器,但是手动管理下载可以更轻松地准确控制我在 Eclipse 安装中应用的内容。
【解决方案2】:

我正在使用 Eclipse 开发 Java、Python 和 PHP 代码。我一直在使用 Ganymede 来完成这一切,直到我想升级到 Galileo。升级非常简单。这些是我遵循的步骤:

  1. 将工作区备份到卸载 Ganymede 不会影响它的地方。
  2. 将所有软件站点复制到一个文本文件中,并将该文本文件与工作区一起备份。
  3. 卸载 Ganymede。
  4. 安装 Galileo。
  5. 在我的例子中,工作空间没有改变,我将 Galileo 指向同一个工作空间,所以我的所有项目和文件仍然存在。
  6. 从文本文件中注明的更新站点更新 Galileo 中的所有插件和扩展。

此时我遇到了一些麻烦,因为插件版本过时/插件与 Ganymede 和 Galileo 的不兼容问题。然而,一些最小的谷歌搜索帮助我解决了这些问题。

Galileo 是我做过的最干净、最直接的安装之一,而且我从来不用乱搞 eclipse.ini

【讨论】:

  • 您所描述的是最终用户升级 Eclipse。这很简单。 Faust 博士正在升级他的基于 Eclipse 的 RCP 应用程序。那更痛苦。
猜你喜欢
  • 2011-03-25
  • 2010-11-16
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多