什么时候删除本地Maven存储库是安全的?

twi*_*mac 19 maven

如果rm -rf ~/.m2/repository我在线工作并且可以通过远程存储库访问所有需要的工件,那么在哪种情况下安全也是不安全的.

Mar*_*nor 24

当您从远程存储库中检索所有依赖项时,本地存储只会变成缓存.

像所有缓存一样,Maven本地仓库有时会变得"脏".在一个公认的偏执和矫枉过正的行为中,我安排了一个定期的cron作业来清除我的构建机器上的本地存储库.这会强制与我的Nexus Maven存储库重新同步.


Mic*_*ski 14

如果您可以通过远程repos访问所有需要的工件,则可以安全地删除本地Maven存储库.下一次构建所需的所有工件,包括甚至基本的Maven插件(如编译器)都将基本上从远程存储库获取.而已.


gra*_*der 5

因此,除了使用“暴力”方式之外,还有一种不同的选择:

蛮力:

rm -rf ~/.m2/存储库

这是执行此操作的“mvn”方法。

“一切:

mvn dependency:purge-local-repository
Run Code Online (Sandbox Code Playgroud)

我认为有帮助的一些论点

mvn dependency:purge-local-repository -DactTransitively=false -DreResolve=false
Run Code Online (Sandbox Code Playgroud)

这是我通常为本地计算机执行的操作:(其中我使用“groupid”的选项参数,这比大锤/暴力更受控制......

mvn dependency:purge-local-repository -DmanualInclude="my.group.id" -DsnapshotsOnly=true  -DactTransitively=false -DreResolve=false
Run Code Online (Sandbox Code Playgroud)

您可以在此处研究命令行选项:

https://maven.apache.org/plugins/maven-dependency-plugin/purge-local-repository-mojo.html