Maven“始终更新快照”的IntelliJ 2017.2设置有什么作用?

Bas*_*que 6 java intellij-idea maven

该课题成功地应答通过检查Preferences/ Settings> Build, Execution, Deployment> Build tools> Maven> Always update snapshots在(复选框)的IntelliJ IDEA

IntelliJ 2017.2>首选项/设置>构建,执行,部署>构建工具> Maven>始终更新快照的屏幕快照(复选框)

那个设置到底是做什么的?

该文档没有帮助。

一律更新快照

如果要IntelliJ IDEA同步更新快照,请选中此复选框。

  • 什么快照?
  • 与什么同步?
  • 为什么我想要保持同步?
  • 为什么默认情况下不选中此选项?

Igo*_*gor 9

我的猜测是,由于 SNAPSHOT 依赖项可能会不断处理,因此它们在开发过程中可能会发生变化。至于你的问题:

  • 什么快照?

您的pom.xml(或等效的)中的任何快照依赖项。这通常(但不一定)是您依赖的任何以“-SNAPSHOT”结尾的版本。

  • 与什么同步?

使用您最初从中提取的存储库。Maven 有自己的本地缓存“.m2”(实际上,IntelliJ 也有自己的 Maven 缓存),所以它会询问它是否应该从 repo 中提取它,即使您有本地副本。

  • 为什么我不想保持同步?

如果您发现快照版本的“版本”有效,您可能只想使用它,直到发布版本结束。它还增加了下拉新版本的构建时间,并占用了带宽(尽管这可能不是问题)。

  • 为什么默认情况下不检查?

因为如果突然推送的更新破坏了事情,它可能会令人沮丧/不可靠/等等。

但是,如果您正在等待某个功能的实现并且尽快需要它,或者如果您正在处理依赖项项目并在调试时不断更新它,那么保持 SNAPSHOT 依赖项是最新的可能是有意义的。