Eclipse Luna 4.4:带有GMF、e4、BIRT、batik插件的应用程序产品无法验证。

3
我正在开发一个Eclipse应用程序,现在想迁移到Eclipse 4.4。在我的应用程序设置中,我使用的是BIRT(最新版本为4.4.0),它附带了Apache Batik插件:
  • org.apache.batik.bridge_1.6.0.v201011041432.jar
  • org.apache.batik.css_1.6.0.v201011041432.jar
  • org.apache.batik.css_1.7.0.v201011041433.jar
  • org.apache.batik.dom.svg_1.6.0.v201011041432.jar
  • org.apache.batik.dom_1.6.0.v201011041432.jar
  • org.apache.batik.ext.awt_1.6.0.v201011041432.jar
  • org.apache.batik.parser_1.6.0.v201011041432.jar
  • org.apache.batik.pdf_1.6.0.v201105071520.jar
  • org.apache.batik.svggen_1.6.0.v201011041432.jar
  • org.apache.batik.transcoder_1.6.0.v201011041432.jar
  • org.apache.batik.util.gui_1.6.0.v201011041432.jar
  • org.apache.batik.util.gui_1.7.0.v200903091627.jar
  • org.apache.batik.util_1.6.0.v201011041432.jar
  • org.apache.batik.util_1.7.0.v201011041433.jar
  • org.apache.batik.xml_1.6.0.v201011041432.jar
此外,我使用GMF(最新版本1.8.1),其中包含所有的batik捆绑包版本1.6。我将所有内容放在我的目标平台中,但是如果我想验证我的产品,仍然会遇到batik版本问题。Eclipse似乎依赖于1.7版本(即bundle org.eclipse.e4.ui.css.core)。但是GMF需要1.6版本。一旦包括org.apache.batik.pdf,它只存在于版本1.6中,就会出现这个问题,因为它会导入所有其他batik包的1.6版本。
我认为可以同时运行几个版本,因为batik不是单例。但是,如果我在Eclipse中验证产品,我会得到一个错误,表示缺少其中一个版本。
我尝试了几种组合: 仅使用1.7包 如果我在目标平台中包含所有1.7包而不是1.6包,GMF会抱怨缺少1.6包。

Validation without 1.6

仅限1.6包

如果我只包含1.6包而不是1.7包,Eclipse框架(捆绑包org.eclipse.e4.ui.css.core)会抱怨缺少1.7包。

Validation without 1.7

1.6和1.7版本都需要

如果我把这两个版本都包含在目标平台中,似乎会选择最新的版本。然后我会收到来自org.apache.batik.pdf(仅支持1.6)缺少其他捆绑包的1.6版本的投诉,并且从GMF捆绑包中再次出现相同的问题。

Validation with both 1.6 and 1.7

关于运行产品:

我找到了这些论坛帖子:
http://www.eclipse.org/forums/index.php/t/207375/
http://www.eclipse.org/forums/index.php/t/787032/

基本上,他们建议编辑产品的运行配置,并在其中包括所有bundle(1.6和1.7版本)。

经过一些尝试,这实际上对我有用,但我的问题仍然是:

是否不允许将bundle包含并共存于几个版本中?如果较低版本也是必需的,为什么产品只加载更高版本?或者整个事情可能是Eclipse IDE的验证工具中的一个错误?还是我完全错过了其他东西?


你解决了吗?我也遇到了同样的问题。 - fbenoit
1个回答

2
问题似乎与Eclipse产品验证机制有关。
我正在面对一个基于特性的Eclipse RCP应用程序相同的问题。它不能使用Eclipse启动器工作,但是我的产品通过Tycho正确构建。
在Eclipse Bugzilla中打开了一个错误,并将在Mars发布版中修复:https://bugs.eclipse.org/bugs/show_bug.cgi?id=367187

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接