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:跳过测试阶段,不会执行单元测试或集成测试。

相关推荐
小灰灰搞电子12 小时前
Qt 实现炫酷锁屏源码分享
开发语言·qt·命令模式
镜花水月linyi12 小时前
Java 线程创建的完整链路:从 Java 层 → JVM 层 → 操作系统层
java·后端·面试
电饭叔12 小时前
TypeError:unsupported operand type(s) for -: ‘method‘ and ‘int‘
开发语言·笔记·python
zfj32112 小时前
排查java应用内存溢出的工具和方法
java·开发语言·jvm·内存溢出
yugi98783812 小时前
MATLAB在卫星姿态控制系统中的应用
开发语言·matlab
历程里程碑12 小时前
C++ 7vector:动态数组的终极指南
java·c语言·开发语言·数据结构·c++·算法
ss27312 小时前
高并发读场景:写时复制容器(Copy-On-Write)
java·开发语言·rpc
czhc114007566312 小时前
c# 1213
开发语言·数据库·c#
一人の梅雨13 小时前
淘宝商品视频接口深度解析:从视频加密解密到多端视频流重构
java·开发语言·python
是喵斯特ya13 小时前
java反序列化漏洞解析+URLDNS利用链分析
java·安全