所以我的项目有 3 个模块但没有父 pom 文件。我可以一个一个地手动运行它们,但我正在寻找一种使用单个 mvn 命令运行所有这 3 个 pom 文件的方法,但没有运气。到目前为止,我尝试了几种不同的组合,但没有为 ex 工作过 -
mvn -f module1/pom.xml -f module2/pom.xml -f module3/pom.xml clean install
但它只运行第一个 pom 文件,而不是全部 3 个。也尝试使用“呼叫”,但没有奏效。有什么想法吗?
不。
如果您总是想一起构建这些项目,请将它们放入一个多模块项目并从该项目的主 POM 构建它。
是否有特定的理由尝试在一个命令中运行它们?如果归结为它们相互依赖,您可以找到pom
需要先运行的并添加类似这样的内容
你的第一个pom
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<version>1</version>
<packaging>pom</packaging>
<modules>
<module>SecondPomFile</module> <---------------
<module>ThirdPomFile</module> <---------------
</modules>
</project>
第二pom
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>SecondPomFile</artifactId> <---------------
<version>1</version>
</project>
第三pom
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>ThirdPomFile</artifactId> <---------------
<version>1</version>
</project>
然后像运行它mvn -f pom.xml
因为你加了
<modules>
<module>SecondPomFile</module> <---------------
<module>ThirdPomFile</module> <---------------
</modules>
您指定的名称然后指向其他 pom,它们在第一个运行时运行