我使用父pom在多个项目中共享依赖项和插件。父pom部署到我们的nexus存储库。在子项目中,父pom包含如下:
<project>
<parent>
<groupId>com.mycompany.app</groupId>
<artifactId>app-parent</artifactId>
<version>1.0.0</version>
</parent>
<groupId>com.mycompany.app</groupId>
<artifactId>app-web</artifactId>
<version>1.2.0</version>
<repositories>
<repository>
<id>my-internal-site</id>
<url>http://nexus/repo</url>
</repository>
</repositories>
</project>
当父pom更新时,希望保持相同的版本,以便子项目自动获取更新的依赖项而不进行更新。但是,即使我使用,似乎父pom也没有更新
mvn clean -U
我如何强制maven(maven 3)始终从远程仓库下载父pom,即使它已经在本地存储库中了?
答案 0 :(得分:1)
如果你定义了这样一个版本的父版本,它将被下载一次。之后它将不会第二次下载原因发布是不可变的。如前所述,您需要考虑使用SNAPSHOT代替。
答案 1 :(得分:0)
您应该将父项目重新安装到本地仓库中,尝试在app-parent目录下运行mvn install
!
答案 2 :(得分:0)
FWIW我有一个案例,maven没有下载父母,只有.lastUpdated文件(列出了下载失败)。即使我提供了帮助:有效pom似乎只是忽略了父母无法下载和缺席的事实,并继续以其快乐的方式。
修复是从maven 3.3.3升级到3.3.9