企业网站建设平台的功能,wordpress 插件上传漏洞,济南企业网站搭建,网站开发工程师绩效考核目录 一、背景二、解决方案三、补充3.1 提出疑问3.2 解答 一、背景
在 SpringCloud 微服务框架下#xff0c;会存在多个模块。当我们需要对其中某一个服务打包的时候#xff0c;需要将该服务依赖的模块一起打包更新#xff0c;如果项目比较小的话我们可以直接将项目中的所有… 目录 一、背景二、解决方案三、补充3.1 提出疑问3.2 解答 一、背景
在 SpringCloud 微服务框架下会存在多个模块。当我们需要对其中某一个服务打包的时候需要将该服务依赖的模块一起打包更新如果项目比较小的话我们可以直接将项目中的所有模块进行 clean install 即可。
但是当项目运行一段时间后项目中的代码量会变得很多每个模块的打包时间也会越来越长将所有模块进行打包的方法已经不再可取那么 如何才能在打包的时候只将所需的模块及其依赖的模块进行打包呢 二、解决方案
我们使用 mvn 命令搭配 -pl 和 -am 这两个参数即可解决上面的问题
-pl 参数或 --projects指定了要构建的模块列表Maven 将仅对这些指定的模块进行构建多个用英文逗号分隔-am 参数或 --also-make表示如果目标模块依赖于其他模块那么在构建目标模块之前Maven 会先构建所有直接依赖于目标模块的子模块。 注意 -am 并不会递归地构建所有简介依赖的模块之构建直接依赖于目标模块的子模块。 命令示例
mvn clean package -am -pl com.demo:springboot-demo三、补充
3.1 提出疑问
看完上面这种方式可能会有这样一个疑问Maven 打包的时候不应该是先从本地仓库拉取么我这里使用 mvn package 而不是 mvn install通过 -am 打包好的直接依赖会打到新的目标模块包中吗
3.2 解答
通过 -am 打包好的直接依赖会自动打到新的目标模块包中的。
因为当所有的直接依赖模块都成功构建完成后Maven 会对目标模块执行打包操作如 jar、war 等并 将直接依赖模块的输出结果作为当前模块的依赖库进行引用和打包。
整理完毕完结撒花~