在idea中修改pom.xml文件,添加各种工程依赖的jar,一直没有问题,但有一天突然添加了一个jbpm3的依赖,发现一直报“Dependency 'xxx' not found",但在maven的仓库中可以找到的,就觉得奇怪了。
经过一段时间的了解后,主要和几个文件有关:
(1)、maven的settings.xml文件
如果你设置了镜像代理,但不巧的是设置成了如下内容(网上有帖子就要求这么设置aliyun的镜像的):
(2)、以我们上面的为例,jbpm3在maven repository可以查到,但查找的结果如下所示(注意红框,它表示这个jar在哪个仓库中):
上面明确表示,这个jar包在JBoss Releases的仓库,而不是在常见的Central中,如下图所示:
默认情况下,只会重Central中下载,而镜像一般只会镜像central库,所以就会导致上面的”Dependency 'xxxx‘ not found"情部了。
(3)、解决方法
原因都知道了,就好办了。一种是在settings.xml中添加对应的仓库,另一种是在pom.xml直接添加额外的仓库。推荐第二种,如下(在</project>之前添加):
然后重新导入一下,理论上应该解决了。第一种方法就是在settings.xml中添加如下镜像:<repositories> <repository> <id>JBoss repository</id> <url>https://repository.jboss.org/nexus/content/repositories/releases/</url> </repository> </repositories>
<mirror> <id>jboss</id> <name>jboss</name> <url>https://repository.jboss.org/nexus/content/repositories/releases/</url> <mirrorOf>JBoss Releases</mirrorOf> </mirror>
希望对你有帮助。