Maven Update Project在Eclipse中是什么意思?

118
在Eclipse中,“Maven -> Update Project...”是做什么的?
该功能可以更新当前Maven项目的依赖和配置,并重新构建项目。它还将确保项目与Maven存储库中最新版本的依赖项和插件相匹配。

6
只需刷新即可重新加载Maven配置文件。 - shakthydoss
请查看此答案,https://dev59.com/HFgQ5IYBdhLWcg3wkE3m?answertab=votes#tab-top - GauravJ
3个回答

99

它将Eclipse项目设置与pom文件同步。如果您例如更改重要的插件设置,例如输出的Java版本,则会发现Eclipse会要求您更新该项目,此后,项目中配置的Java运行时将更改以反映Maven pom文件指示的内容。

需要牢记的重要事情是:在这种项目设置中,Maven pom文件是主角。如果您想要更改设置,请尝试通过pom文件进行更改,而不是直接通过Eclipse项目设置或进行项目更新可能会还原您所做的更改。通常我仍然需要自己纠正一些东西,例如m2eclipse喜欢放置的构建路径排除和奇怪的部署组装配置。


23
我希望听到具体执行了哪些Maven命令和插件。 - Gray
1
如果我从未在Eclipse中更新Maven配置,是否有必要运行Maven Update? - amphibient
1
@amphibient 不是真的。即使Eclipse出现混乱并且对工作区状态感到困惑(这种情况确实会发生),简单的项目清理总是可以解决问题的。 - Gimby
1
@KiriSakow的个人经验和观察。这很简单;在Eclipse中更改项目设置,更新项目,看到您的更改被还原。请记住,这个答案已经过时了,它不一定代表m2eclipse的现代版本。 - Gimby
1
@that_developer 右键单击项目 -> maven -> 重新加载项目。然而这并不是完全等价的。项目名称存储在生成的 .idea 文件中,如果要刷新这些名称,则必须删除该文件并从 pom 文件重新打开项目。 - Gimby
显示剩余12条评论

22

补充一下 @Gimby 的观点-更新项目也提供了更多选项,例如强制更新快照/发布,在您有依赖项正在寻找最新版本时非常有帮助。(例如:[1.0)将找到1.0.*-无论是什么版本最新。)

更新项目与Ivy的解析同义。它将确保所有引用的依赖项都存在,并清理项目以确保它们被正确包含。


1
依赖项可以很好地工作,而无需进行任何项目更新;只需更新pom文件,依赖项就会在Eclipse项目中自动更新。这也是个好消息,否则在Eclipse中使用Maven将会是一件相当麻烦的事情! - Gimby
我同意,maven更新项目将根据pom.xml配置(例如Java版本)更新eclipse。 - Sanchi Girotra

2

1
似乎已经移动了。 - Per Mildner

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接