idea dependencies波浪线-缺少依赖问题

第一问题描述

对于 idea 下的 maven 工程,特别是从其他地方导入的新工程,右边 maven 管理工具中 dependencies 若出现红色波浪线。通常用以下方式尝试解决。

1、

检查 repository 和 settings.xml文件中配置的仓库地址,File --> settings 输入maven,检查local repository的配置和settings.xml中配置的仓库地址。

2、

打开项目 pom.xml 文件,右键 maven --> reimport  ,等待maven重新加载依赖。

3、

同上面操作一样,可以同时对整个项目的所有pom.xml文件进行reimport。

打开编译器右边的maven管理工具,点击reimport all maven projects。

第二问题描述

若还是出现红色波浪线,则有极大可能是maven引用的jar包有版本冲突。

IntelliJ IDEA查找依赖关系,解决jar包冲突

maven工程,一个artifact的jar包可能不只一处被依赖;有时候依赖会出现相同的artifact却不同版本,相互存在冲突,这时就需要exclude某个版本。

解决办法

打开pom.xml文件,右键选择 diagrams --> show dependencies ,在这个关联图中可以看到所有包的所有依赖关系。

找到标有红线的包位置(通常可以结合 maven 管理工具中 dependencies 红线位置可以精准定位),点击该依赖包,可以看到与之有冲突的不同版本的包。这时exclude其中一个就好了。

注意: exclude其中一个的时候,注意查看 repository 中,是哪一个版本的包不存在,则exclude该版本。若是所依赖的版本都不存在,则需要单独添加该maven 包了。

第三问题描述

今天还遇到一种情况,依赖会出现红色波浪线。右边maven 管理工具中,点开出问题的包,会看到该包无法继续展开下一级,同时在左边项目的external libraries 中会找不到该出问题的包。

这种情况,查看repository相应版本包的依赖,可以看到该包只有.pom .sha1等文件,而没有jar包。这是一个错误的依赖包,而且通常靠第一种办法是无法解决的,并不能reimport解决。

解决办法

找一个网络好一点的地方,删掉repository中的该包所有相关文件,再在项目中reimport操作。

若是局域网的话,可以在外面下好后再拷贝进局域网repository中去。

但是。。。最后

但是这些jar在我本地的maven仓库中实际上是存在的,后来无意中修改了下pom才发现这有可能是IDEA的bug,解决办法是:

对于有波浪线的dependency,将其从pom中删除,保存后,再撤销回来,奇迹出现了。。。。。

链接:https://www.jianshu.com/p/45a609b2049f

你可能感兴趣的:(idea dependencies波浪线-缺少依赖问题)