在我们的项目中,Maven构建会在相应的文件夹结构中为不同的模块(例如jar,控制台,car等)生成构件。

每次我们检入代码时,即使仅在“控制台”模块中进行了更改,构建也会生成全新的 Artifact 。

是否有任何Maven插件或仅生成自上次成功构建以来已更改的 Artifact 的方法?

例如,如果我更改了“控制台”模块的代码,则生成的 Artifact 应仅在其对应的文件夹中包含控制台文件。

最佳答案

如果您在命令行上,则可以使用

mvn -pl moduleToBuild

可以与以下内容结合使用:
mvn -pl moduleToBuild -am

这还将构建 moduleToBuild 的依赖项。

如果您使用的是 Jenkins (Jenkins)这样的CI解决方案,则有一个复选框可以激活此行为。可以在Maven配置部分下找到。增量构建-仅构建已更改的模块

您必须在多模块构建的根目录上启动maven调用。

关于Maven构建仅生成更改的arti,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13702531/

10-16 17:08