因为偷懒没写<dependencyManagement>一晚上白干了!

因为偷懒没写dependencyManagement一晚上白干

事情是这样的,最近在学习DDD架构,感觉就像个小型微服务,目录结构是这样的,mq和job不列出来了

父工程root

|___ api

|___ application

​ |____|___controller

|___ domain

|___ infra

|___ common

|___ starter

事情是这样的,我在infra层的pom.xml里面引入了我的common层,然后我对common层的依赖的版本进行了变更,按道理来说

infra既然已经导入了common的依赖,那common的依赖变更了,infra下包含的common的依赖应该也会变更才对,这时候出问题了

这个时候我还没当回事,我以为是缓存的问题,然后我就进行maven的缓存清理 mvn clean install -U 发现还是没用

真给我整懵了,这怎么回事呢?

接下来的原因就是导致我一晚上白干的伏笔了,我因为偷懒,没有在父工程的pom里面规定依赖版本,直接把依赖版本写到了common的pom里面,至于为什么依赖版本写到common的pom里面后更新依赖版本Maven多模块版本依赖出错的问题我到现在也不理解,因为我父工程并没有限制lombok的版本,所以也不存在父工程版本控制的可能,后面才想起来自己没有做父工程的依赖版本管理

为自己的偷懒买单了,在父工程的pom里面进行版本管理

  • 父工程的pom添加下面这个
xml 复制代码
    <properties>
        <lombok.version>1.18.26</lombok.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
  • common包下的pom修改成这个
xml 复制代码
 		<dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>${lombok.version}</version>
    </dependency>

总结

我为什么要修改这个版本呢?其实在本地进行打包啊什么的都没有出现任何错误的,都是正常的

但是我在尝试将项目放到jenkins上进行自动化部署的时候,出现了问题,问题是这样的

一句话就是:lombok版本低了,要提高,就因为自己偷懒没写dependencyManagement一晚上都在不断的刷新maven刷新maven

相关推荐
jiangxia_102422 分钟前
面试系列:什么是JAVA并发编程中的JUC并发工具类
java·后端
用户15129054522024 分钟前
踩坑与成长:WordPress、MyBatis-Plus 及前端依赖问题解决记录
前端·后端
A_氼乚25 分钟前
JVM运行时数据区相关知识,这篇文档会勘正你的许多理解!(本周会补上更详细的图式)
后端
斜月29 分钟前
Springboot 项目加解密的那些事儿
spring boot·后端
草莓爱芒果32 分钟前
Spring Boot中使用Bouncy Castle实现SM2国密算法(与前端JS加密交互)
java·spring boot·算法
慕y2741 小时前
Java学习第九十三部分——RestTemplate
java·开发语言·学习
旋风菠萝1 小时前
设计模式---单例
android·java·开发语言
AI视觉网奇1 小时前
音频获取长度
java·前端·python
FC_nian1 小时前
IDEA配置(Maven)
java·maven·intellij-idea
汤姆yu2 小时前
基于springboot的快递分拣管理系统
java·spring boot·后端