一个maven管理的springboot项目,由于引入的hutool-5.x 的导入导出工具包,要求poi-ooxml的本本需要高于4.1.2,与本项目中其他的poi版本冲突,所以手动排除了低版本的依赖。这导致了其他引用这个本地maven仓的项目中的低版本poi全部爆红,因此为本项目单独配置了本地maven仓的地址,在对父工程执行 mvn clean\package\install等操作均报错:
Could not find artifact com.ys:crm-parent:pom:0.0.1-SNAPSHOT in SJA_Snapshots
解决办法:
在父工程的pom文件中把子模块的声明先注释掉,执行mvn install,然后再放开声明的注释,重新执行mvn package 即可。
分析原因:
这是子模块要去maven仓库寻找父模块的信息,获取继承关系,先去本地仓找,再去中央仓找,但是由于移动了本maven仓库之后,父模块还没有上传到本地仓,执行package的时候也会把子模块进行打包,子模块打包首先要到maven仓库中找父模块的信息,找不到自然报错。
因此要先在父模块中把子模块的声明删除,执行install把父模块安装在maven仓库中,再把声明加回来重新执行package就可以顺利通过了。
springboot maven 集合工程打包问题 Could not find artifact - 乌托邦的美梦 - 博客园