1

我正在尝试创建工件的本地缓存,以便可以离线构建我的 Maven 项目,但它无法为 Eclipse CDT 功能创建缓存工件,因此离线构建无法成功。

我通过运行创建本地存储库工件mvn -Dmaven.repo.local=/some/path/ -DgeneratePom=true clean install,并且构建成功。

然后我运行mvn -Dmaven.repo.local=/some/path/ -o clean install,它失败并显示此错误消息。

错误] 无法解析目标定义 /opt/git/myproject/my.package.target/my.package.target.target: 无法从位置 http://download.eclipse.org/tools/cdt/加载 p2 元数据存储库release/8.6:存储库系统处于脱机状态,并且没有本地缓存​​可用于 http://download.eclipse.org/tools/cdt/releases/8.6 -> [帮助 1]

因此,我尝试通过运行来创建所需的工件mvn -Dmaven.repo.local=/some/path/ dependency:go-offline。我在控制台上看到以下内容,这似乎表明它尝试并未能找到 CDT 工件,或者认为工件已被缓存。

INFO] 添加存储库 http://download.eclipse.org/tools/cdt/releases/8.6 [INFO] 从http://download.eclipse.org/tools/cdt/releases/8.6/r/获取 p2.index ( 0B 在 0B/s)

我想知道这条消息的含义(即 0B 是否表示失败,或者工件已经存在?),以及如何使离线构建工作。由于dependency:go-offline可能(?)与此无关的问题,构建最终失败。之后,离线构建继续失败,因为它找不到 CDT 工件。

我创建了这个 SO 问题这个 Maven Jira 错误报告,关于在从 CDT 更新站点下载 0 字节的上述消息之后下游发生的问题。

我正在构建的项目是一个 Eclipse RCP 应用程序(基于 Mars),我正在使用org.eclipse.tycho:target-platform-configurationMaven 插件从 RCP 目标文件加载依赖项。

4

1 回答 1

1

我为这个问题创建了这个第谷错误。它作为另一个错误的副本被关闭。在针对该错误的讨论中,如果满足构建依赖关系所需的一个或多个存储库是复合存储库,则似乎会出现问题。

于 2015-10-09T20:33:35.023 回答