在 IntelliJ 14 之前修复
文件 [菜单] -> 设置 -> maven -> 导入并取消选中“使用 maven3 导入项目”
参考:http: //youtrack.jetbrains.com/issue/IDEA-98425(可能还有其他一些想法)
修复 IntelliJ 15+
再次遇到这个问题,这次是 IntelliJ 15,它不再提供“使用 maven3 导入”选项。原因是有时 IntelliJ“不能正确解析 maven 依赖项”,如果它不能正确解析其中一个,它显然会放弃所有这些。您可以通过打开 maven 项目工具窗口(查看菜单 -> 工具窗口 -> Maven 项目)来判断是否是这种情况。然后扩展您的一个 Maven 项目及其依赖项。如果依赖关系都用红色下划线,“休斯顿,我们有问题”。
通过将鼠标悬停在项目名称本身上,您实际上可以看到真正的失败。
在我的例子中,它说“问题:没有可用于 XXX 的版本”或“无法读取工件 org.xy.z 的描述符”参考:https ://youtrack.jetbrains.com/issue/IDEA-128846
和
https:// youtrack.jetbrains.com/issue/IDEA-152555
在这种情况下,我似乎在处理一个没有关联 pom 文件的 jar(在我们的 maven nexus 存储库中,以及我的本地存储库中)。如果这也是您的问题,“当前的解决方法:如果您实际上不需要在自己的代码中使用该 jar 中的类(例如仅传递 maven 依赖项),您实际上可以从 pom 中注释掉它(暂时),maven项目重新加载,然后取消注释它。不知何故,在那之后IntelliJ“记住”它的旧工作依赖项。临时添加一个maven传递排除也可能这样做,如果你从传递依赖链中遇到它。 "
可能有帮助的另一件事是使用比捆绑的 3.0.5 的“更新版本”的 maven。为了将其设置为默认使用,关闭所有 intellij 窗口,然后打开首选项 -> 构建、执行和部署 -> 构建工具 -> maven,然后更改 maven 主目录,它应该说“默认项目”在您调整它时位于顶部,尽管您也可以针对特定项目调整它,只要您在调整后“重新导入”即可。
清除缓存
删除您的 intellij 缓存文件夹(Windows:HOMEPATH/.{IntellijIdea,IdeaC}XXX linux ~/.IdeaIC15)和/或卸载并重新安装 IntelliJ 本身。这也可以通过转到 File [menu] -> 来完成Invalidate Caches / Restart...
。单击invalidate and restart
。这将重新索引您的整个项目并解决 IntelliJ 的许多难以追踪的问题。