工程结构

打包[starter]聚合工程前需要先install parent工程到本地仓库.
再在聚合工程执行package/install命令.

会大致出现上述异常情况.
Failure to find com.icoder0:spring-shell-plus-starter:pom:1.0 in xxxx was cached in the local repository, resolution will not be reattempted until the update interval of alimanven has elapsed or updates are forced @ com.icoder0:spring-shell-plus-parent:1.0, /Users/Bofa/.m2/repository/com/icoder0/spring-shell-plus-parent/1.0/spring-shell-plus-parent-1.0.pom, line 4, column 13
大致的意思是该依赖缓存在本地仓库中, 但是不会重新去尝试去获取本地缓存中的依赖, 除非直到更新间隔已经过去或者被强制更新.
这里只要明确一点, 它这里为什么不会尝试去本地仓库拉取依赖.
再仔细观察异常信息
也就是在构建starter该聚合工程前, 递归该聚合工程优先去package/install其子模块.
因此只要构建完starter该聚合工程pom文件后, 再去递归package/install 子模块即可.
翻阅mvn指令参数详情信息可得
mvn -N --non-recursive 仅在当前项目模块执行命令,不构建子模块;
可以在mvn执行命令加上即可, 但是我觉得idea应该有提供该option.

问题解决, 去掉该选项的勾选即可.

如果想在聚合工程下递归控制子模块的打包等操作, 再将该选项勾选上即可.

在打包[Maven]聚合工程时,需先install parent工程到本地仓库,然后在聚合工程执行package/install。遇到异常是由于Maven未尝试从本地仓库获取依赖。解决方法是在构建聚合工程pom后,再递归执行子模块的package/install,或在IDEA中调整选项。

1365

被折叠的 条评论
为什么被折叠?



