如何强制maven总是下载父pom

时间:2014-09-18 01:49:12

标签: maven maven-3

我使用父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,即使它已经在本地存储库中了?

3 个答案:

答案 0 :(得分:1)

如果你定义了这样一个版本的父版本,它将被下载一次。之后它将不会第二次下载原因发布是不可变的。如前所述,您需要考虑使用SNAPSHOT代替。

答案 1 :(得分:0)

您应该将父项目重新安装到本地仓库中,尝试在app-parent目录下运行mvn install

答案 2 :(得分:0)

FWIW我有一个案例,maven没有下载父母,只有.lastUpdated文件(列出了下载失败)。即使我提供了帮助:有效pom似乎只是忽略了父母无法下载和缺席的事实,并继续以其快乐的方式。

修复是从maven 3.3.3升级到3.3.9