我正在开发一个依赖于 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/