Maven 编译指定模版

背景

基于SpringCloud 做的微服务项目,很多都是依赖公共模块下的包,并且多模板都是在一个项目下的。

问题

每次打包都很编译整个项目下的所有模块。这样太耗时间了,把流水线的时间拖的太长了。

解决方案

在maven打包时,我们选择指定的模块及依赖的模块进行打包,这样及可以减少打包的时间,也能确保完整性。

bash 复制代码
mvn clean package -pl ${modulePath} -am -Dmaven.test.skip=true

参数说明:

  • -pl ${modulePath}

-pl:表示只构建指定的模块(module)。${modulePath} 是模块的路径,通常是一个相对路径或模块名称。这个参数可以让你只构建特定的模块,而不是整个项目。

  • -am

-am:表示"依赖模块一起构建"(Aggregator Module)。如果指定的模块依赖于其他模块,Maven 会自动构建这些依赖模块。通常与 **-pl**一起使用,确保依赖的模块也被正确构建。

  • -Dmaven.test.skip=true

-D:用于传递 Maven 的系统属性。

maven.test.skip=true:跳过测试阶段,不会执行单元测试或集成测试。

相关推荐
文子越来越强6 分钟前
【双因子认证】拦截注解@MFACheck 接入指南(其他微服务如何用)
java
一晌小贪欢17 分钟前
python-第27天:Python面向对象详解
开发语言·python·数据可视化·面向对象·python办公
ZGG00328 分钟前
线程池详解:从 7 大参数到生产避坑
java·数据库·后端
迪康Defender33 分钟前
公用电脑责任追溯难?迪康端点安全一体化管理系统用户模式详解
java·运维·开发语言·网络·其他·安全
京师20万禁军教头1 小时前
47-常用类-八大包装类(Wrapper Classes)
java
come112341 小时前
剪映零基础教程
java·linux·运维
16月6日-晴1 小时前
Java面向对象——接口
java·开发语言
wuyk5552 小时前
107.FreeRTOS 链表深度解析:从原理到面试满分答案
c语言·开发语言·数据结构·stm32·单片机·链表·面试
geovindu2 小时前
CSharp: Wordcloud
开发语言·后端·c#·.net·.netcore·词云
苏生Susheng2 小时前
【软件实施】Windows 服务器运维实战
java·运维·服务器·windows·spring boot·javaweb·实施