当前位置: 首页 > article >正文

多模块的spring boot项目发布指定模块的脚本

我有一个多模块的Spring Boot项目,里面有基础模块,有业务模块,业务模块依赖一些基础模块。发布的时候,如果单独将某个模块发布,一般会报错。所以我都是整个项目,无论多少个模块,不管3721,全部发布一遍。这样做成功是成功了,但时间比较长,要几分钟才能发布完。次数一多,浪费的时间就很可观了。
在这里插入图片描述

1、不计成本地全部发布

其实问题主要是出在我发布的脚本上。我原先的发布脚本是这样的,写在一个批处理文件里(该文件在项目的根目录下):

mvn clean install
mvn clean package -Dmaven.test.skip=true  -Ppro

运行的结果就是全部模块都发布了一遍。这个脚本我也不知道是从哪里抄过来的,总之就是抄过来的,我并不理解。问了AI之后才知道,其实这两句都是发布的,没必要两句都用。其中,

1)mvn clean install
先清理旧的构建产物,然后编译、测试、打包项目,并将打包好的文件安装到本地Maven仓库。

2)mvn clean package -Dmaven.test.skip=true -Ppro
清理旧的构建产物,编译项目并跳过测试,打包项目为归档文件,并使用名为 pro 的Profile进行构建。

简单来说,这两句都是全部模块都发布,而且第一句最猛,不单止发布,还要打包到本地的仓库里。

2、指定模块发布

以下是一个指定发布模块,同时模块依赖的模块也一并发布。
当当当:

mvn clean package -pl projectservers/bullshit-warning-server -am -Dmaven.test.skip=true -Ppro

这条命令的完整含义是:

清理旧的构建产物(clean)。
编译并打包 projectservers/bullshit-warning-server 模块(package),并且跳过测试(-Dmaven.test.skip=true)。
同时构建该模块所依赖的所有模块(-am)。 使用名为 pro 的Profile进行构建(-Ppro)。


http://www.kler.cn/a/445597.html

相关文章:

  • 移动网络(2,3,4,5G)设备TCP通讯调试方法
  • SDMTSP:黑翅鸢算法(Black-winged kite algorithm,BKA)求解单仓库多旅行商问题,可以更改数据集和起点(MATLAB代码)
  • 企业健康采购市场:谁在成为优质供给的底层支撑?
  • 前端安全实践:常见攻击的防范与处理
  • 以前很常见的一种HTTP操作方式
  • 【进阶编程】MVC和MVVM实现前后端分离的实现
  • Springboot logback 日志打印配置文件,每个日志文件100M,之后滚动到下一个日志文件,日志保留30天(包含traceid)
  • 最短路径C++
  • 讲PPT 需要注意的事项
  • 单片机与MQTT协议
  • 计算机网络 - HTTP 协议和万维网
  • 【操作系统】基于信号量与PV操作解决东西向汽车过独木桥问题
  • GMSSL的不同python版本
  • Chapter 18 CMOS Processing Technology
  • HTML 有效 DOCTYPES
  • 算法题(10):好数
  • STM32-- keil -常用功能
  • Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
  • 并发修改导致MVCC脏写问题
  • 【后端面试总结】什么是CAP原理