gpt4 book ai didi

maven - IntelliJ 的 "Reimport All Maven Projects"按钮如何工作?

转载 作者:行者123 更新时间:2023-12-03 23:42:43 25 4
gpt4 key购买 nike

IntelliJ 的“重新导入所有 Maven 项目”按钮实际上是如何工作的?

我问这个是因为我看到 IntelliJ 的重新导入按钮的行为是 不同比运行 mvn带有 -U 的命令争论,我不清楚为什么。

最佳答案

我认为您错过了本地和远程存储库的部分。
如果你运行 mvn -U它强制 maven 从远程存储库下载所有库,这些库将成为您的公司 nexus 或 maven repo。与 -U 的主要区别没有是-U将使用远程 SNAPSHOT jar 覆盖您的本地 SNAPSHOT jar。本地 SNAPSHOT jar 来自 install,远程来自 deploy 命令。
重新导入会带来困惑。 重新导入 将加载您的本地 jars 而不是远程 jars,尤其是 SNAPSHOT 的。您可以在 maven 菜单中启用强制更新快照,这将启用 -U切换 intellij。
还要仔细检查您是否与系统 maven 和 intellij maven 共享相同的 .m2 目录。您可以在用户设置文件中看到它并将其与命令行 maven 进行比较。只需运行 mvn -X并检查设置部分。

[DEBUG] Reading global settings from /usr/local/Cellar/maven/3.3.9/libexec/conf/settings.xml
[DEBUG] Reading user settings from /Users/xbaran/.m2/settings.xml
[DEBUG] Reading global toolchains from /usr/local/Cellar/maven/3.3.9/libexec/conf/toolchains.xml
[DEBUG] Reading user toolchains from /Users/xbaran/.m2/toolchains.xml
[DEBUG] Using local repository at /Users/xbaran/.m2/repository
enter image description here

给 future 读者的提问者说明
这个答案并没有完全解释重新导入按钮的行为,所以我将在这里添加我的观察以供后代使用。
IntelliJ 的缓存(即 .idea 文件夹)似乎发生了一些事情。使用 mvn clean install -U在终端按此处所述工作,但不影响 IntelliJ IDE;丢失的符号仍被描述为丢失。但是,如果我按下“神奇的重新导入按钮”,那些丢失的符号就会成功解决。
我只能假设 重新导入按钮基本上是在指示 IntelliJ 刷新自己的缓存 ,这就是行为存在差异的原因。

关于maven - IntelliJ 的 "Reimport All Maven Projects"按钮如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32484065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com