82

当我在项目的pom.xml中手动添加依赖项时,让Maven下载依赖项并让IntelliJ构建模块,IntelliJ抱怨缺少库。同时Maven可以找到依赖的 JAR 并构建项目。

如何告诉IntelliJ使用Maven下载的库?

4

10 回答 10

61

事实证明 IntelliJ 不会从本地 Maven 存储库中获取添加的依赖项。我们必须告诉 IntelliJ 重新导入 pom.xml。

  1. 在 IntelliJ 中打开项目视图
  2. 右键单击 pom.xml 文件并选择 Maven - Reimport
  3. 如果这对您有用,IntelliJ 会将依赖项添加到项目中
  4. 检查是否添加了您需要的依赖项
    • 文件 - 项目结构 - 项目设置 - 库
    • 和文件 - 项目结构 - 模块 - 依赖项
于 2013-06-07T20:14:31.070 回答
48

您不必每次都手动重新导入。您可以启用自动导入,如此处所述。 在设置 -> Maven -> 自动导入 Maven 项目中更改此设置。

于 2013-06-07T21:39:51.397 回答
26

IntelliJ IDEA 2016

自动导入 Maven 项目

方法一

  • 文件>设置... >构建、执行、部署>构建工具> Maven >导入> 选中自动导入 Maven 项目

    自动导入 Maven 项目

方法二

  • Ctrl+ Shift+ A> 键入“导入 Maven”> 选择“自动导入 Maven 项目”并按Enter> 选中自动导入 Maven 项目

重新导入

方法一

  • 在项目视图中,右键单击您的项目文件夹 > Maven >重新导入

方法二

  • 查看>工具窗口> Maven 项目

    • 右键单击您的项目>重新导入

    或者

    • 单击“重新导入所有 Maven 项目”图标:

      重新导入所有 Maven 项目

于 2016-07-26T11:29:45.810 回答
12

你需要去:Maven设置->自动重新加载设置

自动重新加载设置

然后检查“任何更改”:

在此处输入图像描述

于 2020-10-27T10:00:06.477 回答
9

取消选中

“离线办公”

在设置-> Maven 中!它对我有用!:D

于 2014-04-04T18:14:43.080 回答
9

文件>设置>构建、执行、部署>Maven>检查:始终更新快照

这对我有用。

于 2019-01-24T10:25:17.760 回答
3

出于某种原因,IntelliJ(至少在 2019.1.2 版本中)忽略了本地.m2目录中的依赖项。以上解决方案都不适合我。最终迫使 IntelliJ 发现本地依赖项的唯一事情是:

  1. 关闭项目
  2. 点击打开项目pom.xml(不在项目目录上)
  3. 点击Open as Project

项目清单

  1. 点击Delete Existing Project and Import

在此处输入图像描述

于 2019-08-27T09:53:41.627 回答
3

IntelliJ 2020pom.xml视图中,应该能够通过以下组合键应用 pom 更改:CTRG+ SHIFT+ O

正如之前正确评论的那样 - IntelliJ 还显示了一个用于导入更改的气球小部件。

于 2020-07-14T14:31:36.143 回答
2

除了检查“自动导入 Maven 项目”外,请确保 File > Settings > Maven > User Settings 文件中的 settings.xml 文件存在,如果不存在,则覆盖并提供您的 settings.xml 文件路径。

于 2017-11-20T08:32:19.623 回答
2

我尽一切努力让 IntelliJ 接受我的pom.xml更改,但它只是没有这样做。我注释掉了所有的<dependencies>inpom.xml并重建了应该显示数百个编译错误但没有的项目。

最后,我不得不删除该.idea文件夹以让 IntelliJ 重新生成它的 maven 模型。一旦我这样做pom.xml了,当我执行“重新加载所有项目”时,随后的更改就会被拾取,所以我怀疑 IntelliJ 使用缓存模型而不是在进行更改时更新它的错误。

这是我所做的:

  1. 在 IntelliJ 中关闭项目(文件 -> 关闭项目)
  2. 删除.idea项目根文件夹中的文件夹
  3. 在 IntelliJ 中再次打开项目
  4. Maven -> 重新加载所有项目
  5. 构建 -> 重建项目
于 2021-09-17T11:24:15.057 回答