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

相关推荐
Hello_Damon_Nikola11 分钟前
CH573从入门到精通
c语言·开发语言·单片机·嵌入式硬件
Logintern0919 分钟前
Langgraph使用MemorySaver建立有记忆的图
开发语言·windows·python
counting money19 分钟前
Spring AI Alibaba 从入门到实战:构建企业级 AI 应用
java·人工智能·spring
豆沙沙包?28 分钟前
C++~~~vector容器(p31-P40)
开发语言·c++
原野池予39 分钟前
深入Java集合框架:数组与List互转底层原理剖析(JDK 8)
java·数据结构·list
必须会一定会43 分钟前
GLM-5.3 迁移实战:强制思考、1M 上下文与官方编程基准
android·开发语言·kotlin
牛油果子哥q1 小时前
C++STL容器详解:vector/list/string底层扩容、迭代器失效终极解决、容器选型避坑
开发语言·c++·list
Java成神之路-1 小时前
深入理解 HashMap 扩容时机:JDK 7 vs JDK 8 的设计差异与取舍
java·juc
李冰然1 小时前
深入Java集合框架:数组与List互转底层原理剖析(JDK 8)
java
meilindehuzi_a1 小时前
Next.js 全栈基础实战:从 SPA、SSR 到 App Router 与 Todo API
开发语言·javascript·ecmascript