1

我正在使用 Eclipse Tycho 来构建我的 RCP 应用程序与 GMF 依赖项。

我收到以下错误 -

[ERROR] Internal error: java.lang.RuntimeException: Could not download artifacts from any repository
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.emf.core,1.4.1.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.emf.commands.core,1.4.0.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.emf.ui.properties,1.5.0.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui,1.6.0.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui.properties,1.4.2.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui.providers,1.5.0.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui.providers.ide,1.2.0.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui.render,1.6.0.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui.resources.editor,1.4.1.v20120514-1615
[ERROR] osgi.bundle,org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide,1.2.1.v20120514-1615

我在 Manifest.MF 中指定了以下依赖项 -

org.eclipse.gmf.runtime.emf.core;bundle-version="1.4.1",
 org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.4.0",
 org.eclipse.gmf.runtime.emf.ui.properties;bundle-version="1.5.0",
 org.eclipse.gmf.runtime.diagram.ui;bundle-version="1.6.0",
 org.eclipse.gmf.runtime.diagram.ui.properties;bundle-version="1.4.2",
 org.eclipse.gmf.runtime.diagram.ui.providers;bundle-version="1.5.0",
 org.eclipse.gmf.runtime.diagram.ui.providers.ide;bundle-version="1.2.0",
 org.eclipse.gmf.runtime.diagram.ui.render;bundle-version="1.6.0",
 org.eclipse.gmf.runtime.lite.svg;bundle-version="1.0.0",
 org.eclipse.gmf.runtime.diagram.ui.resources.editor;bundle-version="1.4.1",
 org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide;bundle-version="1.2.1",

我已将 GMF 捆绑包的存储库位置提供为 -

<repository>
  <id>gmf-runtime</id>
  <url>http://download.eclipse.org/modeling/gmp/gmf-runtime/updates/releases</url>
  <layout>p2</layout>
</repository>

P2 存储库具有上述所有 JAR。唯一的区别是,出于某种原因,第谷正在寻找.v20120514-1615限定符。但是 P2 存储库具有.201302191707限定符。不知道为什么 Tycho 正在寻找那个特定的限定词而不是解析到最新版本。

4

1 回答 1

2

原来的 P2 Repo 似乎已损坏。问题是即使没有引用插件,Tycho 也会尝试索引整个 P2 存储库。为了解决这个问题,我们做了 -

  1. 打开 .product 文件并导出产品
  2. 从导出的产品工件中复制“存储库”文件夹并将其放在共享位置
  3. 在 Maven pom.xml 的标签中,如果是外部存储库,则提供此存储库的位置。所有未来的 Tycho 构建都将使用这个存储库

这样,回购规模很小,所有构建问题都得到了解决。

于 2013-05-07T08:14:58.373 回答