Download Maven未下载/识别快照

Download Maven未下载/识别快照,download,maven-3,snapshot,Download,Maven 3,Snapshot,我们在团队中使用Maven/Nexus/Hudson。我们的Hudson服务器上的Maven版本是3.0.4,并且在构建作业时已停止下载快照依赖项。我不确定发生了什么变化(团队中没有人做过任何事情,所以他们说),但发生了一些事情,因为周一上午工作的构建在周一下午停止工作 当我尝试在Hudson中构建一个具有快照依赖关系的项目时,会出现以下错误: [WARNING] The POM for com.company:my-client:jar:1.9-SNAPSHOT is missing, no

我们在团队中使用Maven/Nexus/Hudson。我们的Hudson服务器上的Maven版本是3.0.4,并且在构建作业时已停止下载快照依赖项。我不确定发生了什么变化(团队中没有人做过任何事情,所以他们说),但发生了一些事情,因为周一上午工作的构建在周一下午停止工作

当我尝试在Hudson中构建一个具有快照依赖关系的项目时,会出现以下错误:

[WARNING] The POM for com.company:my-client:jar:1.9-SNAPSHOT is missing, no dependency information available
我相信我已经把这个问题确定下来,因为Maven没有下载
Maven metadata.xml
文件,因此无法解决对时间戳版本的依赖性。例如,在我的本地构建(使用Maven 3.0.3)中,我在Maven输出中看到:

Downloading: http://ip:8080/nexus/content/groups/public/com/company/my-client/1.9-SNAPSHOT/maven-metadata.xml
Downloaded: http://ip:8080/nexus/content/groups/public/com/company/my-client/1.9-SNAPSHOT/maven-metadata.xml (1004 B at 20.0 KB/sec)
Downloading: http://ip:8080/nexus/content/groups/public/com/company/my-client/1.9-SNAPSHOT/my-client-1.9-20130625.202822-1.pom
Downloaded: http://ip:8080/nexus/content/groups/public/com/company/my-client/1.9-SNAPSHOT/my-client-1.9-20130625.202822-1.pom (3 KB at 57.5 KB/sec)
...
Downloading: http://ip:8080/nexus/content/groups/public/com/company/my-client/1.9-SNAPSHOT/my-client-1.9-20130625.202822-1.jar
...
Downloaded: http://ip:8080/nexus/content/groups/public/com/company/my-client/1.9-SNAPSHOT/my-client-1.9-20130625.202822-1.jar (10 KB at 153.9 KB/sec)
两个版本都在访问我们的Nexus repo,Hudson Maven从中访问非快照依赖项没有问题,因此这不是连接问题


为什么Maven不识别快照并下载
Maven metadata.xml
,以获取依赖项的最新时间戳版本?

在做了很多尝试之后,我们发现hudson用户的settings.xml文件删除了nexus配置文件。这似乎产生了无法查询快照repo的效果,尽管它可以从发布repo中获取工件


在我们修复之前,该文件的最后一次编辑是5月29日,因此,为什么乔布斯在6月24日上午建造,而不是在下午建造,仍然是个谜。可能有东西被缓存了,然后被刷新了。

我也遇到了这个问题。我们无意中通过将源存储库添加到项目POM中解决了这个问题。尽管仍通过镜像路由,但此更改允许项目将元数据解析为最新的快照版本

例如:


XYZ快照
http://nexus.xyz.org/nexus/content/groups/enterprise-snapshots/
假的
真的
事后,我发现我们没有正确配置镜像。真正的问题似乎是settings.xml中的镜像上没有启用快照,即使它们是在Nexus本身中启用的

当我在项目中添加repo时,我启用了快照而没有考虑它,这允许Maven解析快照。这就解决了这个问题,但更好的解决方案是更新settings.xml以修复所有镜像回购

以下是正确的settings.xml配置(取自):


关系
*
http://localhost:8081/repository/maven-公开的/
关系
中心的
http://central
真的
真的
中心的
http://central
真的
真的
关系

只需尝试删除生成服务器上的本地存储库或与生成相关的存储库,然后重试。您是否已配置从Nexus中删除快照?哇,您很快跳到了调试阶段6:)我刚才遇到了类似的问题--它下载了maven-metadata.xml文件,然后继续尝试下载pom文件,但没有日期,然后说“XXX的pom丢失,没有可用的依赖信息”因为它没有下载带时间戳的pom。从各种pom.xml文件中删除(过时的)存储库设置,现在一切正常。谢谢你救了我的头发!