gpt4 book ai didi

maven-2 - 如何防止 maven 解析本地存储库中的依赖项

转载 作者:行者123 更新时间:2023-12-04 01:48:10 24 4
gpt4 key购买 nike

有没有办法告诉 maven(在执行 mvn package、mvn site 或...时)不要从本地存储库解析依赖项?

本题背景:有时我会遇到问题,当以前缓存的依赖项(例如 SomeProject-0.7-ALPHA)在远程存储库中不再可用时。在我的本地构建中,一切仍然正常,因为之前已经缓存了依赖项。一旦我与其他人共享我的 pom,他们可能会遇到麻烦,因为他们没有该依赖项的缓存版本,并且无法再从远程存储库中解析该依赖项。

任何帮助将不胜感激。提前致谢!

最佳答案

Is there a way to tell maven (when doing mvn package, mvn site or ...) not to resolve the dependencies from the local repository?



不,这就是整个依赖项解析的工作方式(通过本地存储库)。

Sometimes I get into problems, when previously cached dependencies (e.g. SomeProject-0.7-ALPHA) are no longer available in the remote repository.



抱歉,从远程存储库中删除明显的依赖项是一种可怕的做法,并且会导致......以及您面临的那种麻烦。如果可能,请避免这样做。

As soon as I share my pom with others, they may get into trouble, as they dont have a cached version of that dependency and the dependency can no longer be resolved from the remote repository.



检查事情对其他人是否有效的一种方法是 清除 您将要从本地存储库共享并重新解析它们的项目的依赖项。当然,手动执行此操作会非常痛苦,但好消息是 Maven Dependency Plugin有一个 purge-local-repository目标。
mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:purge-local-repository  \
-DreResolve=true \
-DactTransitively=true \
-Dverbose=true

如果这失败了,那么您知道缺少某些东西并且无法再解决,这基本上是您想知道的。但是您也丢失了它,因此如果这对您很重要,请备份您的存储库。

关于maven-2 - 如何防止 maven 解析本地存储库中的依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2772552/

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