我正在开发一个Eclipse应用程序,现在想迁移到Eclipse 4.4。在我的应用程序设置中,我使用的是BIRT(最新版本为4.4.0),它附带了Apache Batik插件:
我认为可以同时运行几个版本,因为batik不是单例。但是,如果我在Eclipse中验证产品,我会得到一个错误,表示缺少其中一个版本。
我尝试了几种组合: 仅使用1.7包 如果我在目标平台中包含所有1.7包而不是1.6包,GMF会抱怨缺少1.6包。
- 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
我认为可以同时运行几个版本,因为batik不是单例。但是,如果我在Eclipse中验证产品,我会得到一个错误,表示缺少其中一个版本。
我尝试了几种组合: 仅使用1.7包 如果我在目标平台中包含所有1.7包而不是1.6包,GMF会抱怨缺少1.6包。
仅限1.6包
如果我只包含1.6包而不是1.7包,Eclipse框架(捆绑包org.eclipse.e4.ui.css.core)会抱怨缺少1.7包。
1.6和1.7版本都需要
如果我把这两个版本都包含在目标平台中,似乎会选择最新的版本。然后我会收到来自org.apache.batik.pdf(仅支持1.6)缺少其他捆绑包的1.6版本的投诉,并且从GMF捆绑包中再次出现相同的问题。
关于运行产品:
我找到了这些论坛帖子:
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的验证工具中的一个错误?还是我完全错过了其他东西?