强制Intellij IDEA重新读取所有maven依赖项

时间:2012-04-02 17:24:28

标签: maven intellij-idea

如何强制intellij想法重新读取/更新pom文件中指定的所有依赖项?

14 个答案:

答案 0 :(得分:298)

Ctrl + Shift + A 查找操作,输入"重新导入",您会找到& #34;重新进口所有Maven项目"。

在Mac上,请使用 + + A

答案 1 :(得分:119)

打开“Maven Projects”选项卡/窗口,然后单击左上角的“Reimport All Maven Projects”开始重新加载其存储库中的所有依赖项。状态栏会通知有关过程。

是什么让您认为这不能正常工作?也许任何依赖项无法从存储库加载?

答案 2 :(得分:60)

还有一个有用的设置告诉IntelliJ检查新版本的依赖项,即使版本号没有改变。我们有一个本地maven存储库和一个快照项目,它已更新几次,但版本号相同。问题是IntelliJ / Maven没有更新这个项目,因为版本号固定。

要启用检查已更改的依赖项,尽管版本号未更改,请转到“Maven项目”选项卡,选择“Maven设置”并激活“始终更新快照”。

答案 3 :(得分:34)

适用于IntelliJ IDEA 14.0

项目> [您的项目名称]>右键单击> Maven>再次导入

答案 4 :(得分:15)

如果重新导入不起作用(即在更新pom后没有删除旧版本的依赖项),还有一次机会:

  • 打开项目设置(CTRL + SHIFT + ALT + S)
  • 在模块上,删除要重新导入的所有库(例如重复)
  • IDEA会警告某些人仍在使用,确认
  • 应用并选择确定
  • 然后重新导入所有maven项目。

答案 5 :(得分:14)

下面最左边的按钮(蓝色循环)也会重新导入所有maven项目:

enter image description here

答案 6 :(得分:5)

运行此命令 mvn -U clean install

答案 7 :(得分:3)

我遇到一个问题,IntelliJ无法编译类,声称缺少项目之间的依赖关系。 按照这个问题的答案中的建议重新导入项目并没有解决问题。 我的解决方案是:

  1. 删除所有项目(项目标签/右键单击根文件夹/ maven /删除项目);
  2. 关闭编辑器;
  3. 在命令行上使用maven编译所有项目;
  4. 在同一个项目上打开编辑器;
  5. 再次将项目添加到maven(maven tab / add maven projects(绿色+)/选择根pom);
  6. 警告:在某些项目中,您可能必须为maven导入增加最大内存(maven选项卡上的maven设置/导入程序的Importing / VM选项)。

答案 8 :(得分:3)

在最新的IntelliJ IDEA版本(2020.1.3 Ultimate Edition)中,您需要在更改pom.xml之后单击出现在编辑器窗口右上方的小家伙

这个小家伙太小了,位置太小了。我喜欢右下角显示警报的以前的版本。在此版本中仍找不到启用自动导入的选项。

enter image description here

答案 9 :(得分:3)

转到文件|设置|构建,执行,部署|生成工具| Maven的

选择“始终更新快照”

答案 10 :(得分:0)

如果您对任何依赖项使用版本范围,请确保IntelliJ使用Maven 3导入项目。您可以在Settings > Maven > Importing > Use Maven3 to import project中找到此设置。否则,您可能会发现未正确导入SNAPSHOT版本。

答案 11 :(得分:0)

设置> Maven>始终更新快照

答案 12 :(得分:0)

要删除 所有依赖项 ,默认情况下,您只需删除本地Maven存储库:~/.m2文件夹即可。然后一个接一个地重建您的项目:

mvn clean
mvn package

答案 13 :(得分:0)

如果您使用IntelliJ,则有四种独立的方法来刷新Maven存储库。 它们每个都刷新计算机上的另一个本地存储库或以不同的方式刷新它们。

1. mvn -U clean install
2. Ctrl+Shift+A - Reimport
3. Round arrows in the Maven window

4. Ctrl+Alt+S , go to Build, Execution, Deployment | Build Tools | Maven | Repositories -choose rep - update

通常会说有趣的是,最后一次刷新等于Maven窗口中的圆形箭头。但是,根据我的经验,它们是完全不同的!证明:我们的大型项目无法进行最后一次刷新,但是没有它就可以存在并愉快地运行。并且双圆形箭头可以正常运行。

这四项中的每一项都可以帮助您解决问题或/和查找自身的问题。例如,对于运行我们的实际项目,只有第一个是必需的,但是对于在IntelliJ中进行测试,我们还需要2和3。当然,有人也需要4。 (为什么IntelliJ还有它?)