maven-2 - 使用 Maven 强制重新下载发布依赖项

标签 maven-2 maven dependency-management maven-dependency-plugin

我正在开发一个依赖于 X 的项目。X 又依赖于 Y。

我曾经在项目的 pom.xml 中明确包含 Y。然而,它没有被使用,为了让事情变得更清晰,我将它作为依赖项添加到 X 的 pom 中。 X 被标记为发布依赖项。

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

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

最佳答案

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

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

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

关于maven-2 - 使用 Maven 强制重新下载发布依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7959499/

相关文章:

java - 如何在插件中下载 Maven 工件?

maven - 是否可以将 maven-release-plugin 与特定版本一起使用?

Java 9 模块测试错误

java - 1.4 Commons-DBCP 被引入而不是 1.3

javascript - 如何有效地大规模应用 React 组件的版本控制?

homebrew - 有没有办法查看任何已安装的 brew 包是否具有特定的依赖关系?

maven-2 - 如何为多模块项目的一个模块执行不同的目标?

maven-2 - 如何在 Maven 中为依赖项指定存储库

maven-2 - 在 jar 中包含其他资源

java - 参数化 JBehave 测试