首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Maven强制重新下载发布依赖项

使用Maven强制重新下载发布依赖项
EN

Stack Overflow用户
提问于 2011-11-01 04:44:26
回答 11查看 261.3K关注 0票数 159

我正在做一个依赖于X.X的项目,而X依赖于Y。

我过去常常在项目的pom中显式地包含Y。然而,它并没有被使用,为了让事情更清晰,我把它作为依赖项添加到了X的pom中。X被标记为发布依赖项。

问题是,在从我的项目的pom中删除Y并将其添加到X的pom之后,我的项目并没有在mvn -U clean package上获得它。我知道-U更新快照,但不知道版本。

那么,在不删除~/.m2/repository目录的情况下,如何强制重新下载X的pom?此外,我尝试运行dependency:purge-local-repository,但也不起作用。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2011-12-24 21:44:38

您不能使Maven重新下载依赖项,但您可以做的是清除使用mvn dependency:purge-local-repository错误下载的依赖项

请参阅:http://maven.apache.org/plugins/maven-dependency-plugin/purge-local-repository-mojo.html

这将查找当前项目的所有传递依赖项的列表,删除它们,然后重新下载它们。如果你想在每次构建时都运行它,你甚至可以将它作为插件添加到你的pom中。

票数 202
EN

Stack Overflow用户

发布于 2013-08-14 05:31:45

我刚刚删除了我的~/.m2/仓库,这迫使我重新下载;)

票数 60
EN

Stack Overflow用户

发布于 2016-05-17 16:10:40

基于阿里托克曼的答案。我设法用以下命令强制删除了一个特定的本地依赖项:

代码语言:javascript
复制
mvn dependency:purge-local-repository -DmanualInclude=com.skyfish:utils

这样,它就从我的.m2/仓库中删除了utils,并且当我继续运行mvn clean install时,它总是重新下载utils JAR依赖项。如果您想要更具编程性的东西,也可以看看-Dinclude=...选项。

票数 51
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7959499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档