Maven“Always update snapshots”的IntelliJ 2017.2设置有什么作用?

时间:2017-10-24 19:56:16

标签: java maven intellij-idea

选中Preferences / Settings>

This Questionanswered successfully Build, Execution, Deployment> Build tools> Maven> IntelliJ IDEA中的Always update snapshots(复选框)。

screen shot of IntelliJ 2017.2 > Preferences/Settings > Build, Execution, Deployment > Build Tools > Maven > Always update snapshots (checkbox)

➠该设置究竟做了什么?

The documentation没有用。

  

始终更新快照

     

如果您希望IntelliJ IDEA在同步时更新快照,请选中此复选框。

  • 什么快照?
  • 与什么同步?
  • 为什么想要保持同步?
  • 为什么默认不检查?

1 个答案:

答案 0 :(得分:3)

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

  
      
  • 什么快照?
  •   

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

  
      
  • 与什么同步?
  •   

使用您最初从中取出的存储库。 Maven有自己的本地缓存,“。m2”(实际上,IntelliJ也有自己的Maven缓存),所以即使你有一个本地拷贝,也要问它是否应该从repo中删除它。

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

如果您找到了可用的快照版本的“版本”,您可能只想在发布版本发布之前使用它。它还会增加构建时间以降低新版本,并占用带宽(尽管这可能不是问题)。

  
      
  • 为什么默认不检查?
  •   

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

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