如何让 IntelliJ IDEA 从 Maven 更新我的依赖项?
Posted
技术标签:
【中文标题】如何让 IntelliJ IDEA 从 Maven 更新我的依赖项?【英文标题】:How can I make IntelliJ IDEA update my dependencies from Maven? 【发布时间】:2013-06-04 05:48:28 【问题描述】:当我在我的项目的pom.xml中手动添加依赖时,让Maven下载依赖并让IntelliJ 构建模块,IntelliJ 抱怨缺少库。同时 Maven 可以找到依赖的 JAR 并构建项目。
我如何告诉 IntelliJ 使用 Maven 下载的库?
【问题讨论】:
Force Intellij IDEA to reread all maven dependencies的可能重复 现代版本的 Intellij 在气球中提示导入更改或启用自动导入。 【参考方案1】:事实证明 IntelliJ 不会从本地 Maven 存储库中获取添加的依赖项。我们必须告诉 IntelliJ 重新导入 pom.xml。
-
在 IntelliJ 中打开项目视图
右键单击 pom.xml 文件并选择 Maven - Reimport
如果这对您有用,IntelliJ 会将依赖项添加到项目中
检查是否添加了你需要的依赖
文件 - 项目结构 - 项目设置 - 库
和文件-项目结构-模块-依赖关系
【讨论】:
【参考方案2】:您不必每次都手动重新导入。您可以启用自动导入 as documented here. 在设置 -> Maven -> 自动导入 Maven 项目中更改此项。
【讨论】:
在更高版本的 IntelliJ 中,该选项可以在 File -> Setttings -> Build, Execution, Deployment -> Build Tools -> Maven -> Importing 下找到。 这已经消失了(2020.1),您必须在编辑它时单击显示在 pom 文件上方的 maven 按钮:( 见***.com/questions/26099526/… @FrankHopkins 是的,在 2020.1 中,您必须在该按钮出现时手动单击它。唯一的自动 maven 更新是文件更改超出想法时(例如您签出不同的分支)。它已在 2020.2 中放回,但您必须打开设置 - 请在此处查看问题:youtrack.jetbrains.com/issue/… @AntonyStubbs 啊太棒了!谢谢(你的)信息!有趣的是,我在单击通知窗口时从来没有遇到过问题,但是应该不那么阻碍的小按钮是如此通畅,直到我开始寻找它为什么不再工作时我才注意到它。 【参考方案3】:IntelliJ IDEA 2016
自动导入 Maven 项目
方法 1
文件 > 设置... > 构建、执行、部署 > 构建工具 > Maven > 导入 >勾选自动导入Maven项目
方法 2
按 Ctrl + Shift + A > 输入“导入 Maven” > 选择“自动导入 Maven 项目”并按 Enter > 勾选自动导入Maven项目重新导入
方法 1
在项目视图中,右键单击您的项目文件夹 > Maven > 重新导入方法 2
查看 > 工具窗口 > Maven项目:
右键单击您的项目>重新导入或
点击“重新导入所有 Maven 项目”图标:
【讨论】:
右键单击项目文件夹后看不到 Maven 选项。是否需要与 IDEA 单独安装 Maven 插件? @vikramvi 是的,您需要先安装 maven。 docs.wso2.com/display/IS323/Installing+Apache+Maven+on+Windows 我可能为时已晚,但我正在为将来面对它的人添加此评论。 我正在使用 ideaIU-2021.2,这个reimport
显示为 reload
。【参考方案4】:
你需要去:Maven设置->自动重载设置
然后检查“任何更改”:
【讨论】:
对于 macOS 用户,除了 IDE 右侧 Maven 的上述入口点之外,您可以: IntelliJ IDEA -> Preferences... -> Build, Execution, Deployment -> Build Tools ->选中“在构建脚本更改后重新加载项目”并选择“任何更改”。适用于我的 IntelliJ IDEA 2021.1.1。【参考方案5】:取消勾选
“离线工作”
在设置 -> Maven 中! 它对我有用! :D
【讨论】:
【参考方案6】:文件>设置>构建、执行、部署>Maven> 检查:总是更新快照
这对我有用。
【讨论】:
我也是。 IntelliJ 太聪明了,无法在命令行上的Eclipse
和mvn clean install
也能成功。小时数丢失。我讨厌学究气的软件。【参考方案7】:
由于某种原因,IntelliJ(至少在 2019.1.2 版本中)忽略了本地 .m2
目录中的依赖项。以上解决方案都不适合我。最终迫使 IntelliJ 发现本地依赖项的唯一事情是:
-
关闭项目
点击
pom.xml
打开项目(不在项目目录上)
点击Open as Project
-
点击
Delete Existing Project and Import
【讨论】:
【参考方案8】:在 IntelliJ 2020 中的 pom.xml
视图中,应该能够通过以下组合键应用 pom 更改:CTRG + SHIFT + O.
正如之前正确评论的那样 - IntelliJ 还显示了一个气球小部件来导入更改。
【讨论】:
【参考方案9】:除了检查“自动导入 Maven 项目”外,请确保 File > Settings > Maven > User Settings 文件中的 settings.xml 文件存在,如果不存在,则覆盖并提供您的 settings.xml 文件路径。
【讨论】:
【参考方案10】:我尽一切努力让 IntelliJ 获取我的 pom.xml
更改,但它只是没有这样做。我注释掉了pom.xml
中的所有<dependencies>
并重建了应该显示数百个编译错误但没有显示的项目。
最后,我不得不删除 .idea
文件夹以让 IntelliJ 重新生成它的 maven 模型。完成此操作后,当我执行“重新加载所有项目”时,会获取对 pom.xml
的后续更改,因此我怀疑 IntelliJ 使用缓存模型而不是在进行更改时更新它的错误。
这就是我所做的:
-
在 IntelliJ 中关闭项目(文件 -> 关闭项目)
删除项目根目录下的
.idea
文件夹
在 IntelliJ 中再次打开项目
Maven -> 重新加载所有项目
构建 -> 重建项目
【讨论】:
以上是关于如何让 IntelliJ IDEA 从 Maven 更新我的依赖项?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 IntelliJ IDEA 中创建 JavaFX Maven 项目?