如果你遇到这个问题,而local repository里jar确实存在,一定看一眼你使用的maven版本:你可能遇到maven 3的一个坑。
简而言之,maven3 开始验证本地仓库jar包的repository_id。
原因
从maven3开始,从远程仓库下载jar包时,会在jar文件旁边生成一个`_maven.repositories`文件,文件里写明它来自哪个repository。
如果当前项目的effective pom(`mvn
解决办法
简单粗暴: 把`_maven.repositories`全删掉
find ~/.m2/repository -name _maven.repositories -exec rm -v {} \;
参考
参考 StackOverflow网友回答 。