Maven偶现本地仓库jar存在仍然从远程仓库拉取且失败的现象
/ / 点击: / 阅读耗时 2 分钟问题现象
使用Maven过程中,曾经出现过本地仓库中已经存在某jar包,但是Maven仍然从远程仓库下载jar包的现象,并且可能会报出类似以下的错误:
1 | [exec] [ERROR] The project com.acme:test:0.0.1-SNAPSHOT (/home/acme/pom.xml) has 1 error |
解决方案
在stackoverflow看到了类似的问题,可以通过删除_remote.repositories
文件解决问题。
Maven使用_remote.repositories
文件存储本地jar对应的远程仓库源头。如果源头已经不存在该jar包(比如更改配置切换镜像、切换仓库导致的),Maven的resolve会失败,从而导致项目构建失败。删除了该文件以后,Maven不再从远程仓库执行此操作,因此可以解决问题。
参考资料:
maven-cant-find-my-local-artifacts
remote-repositories-prevents-maven-from-resolving-remote-parent