我正在寻找这样的东西:
List<URL> urls = listURLFromPOM("c:\pom.xml");
..
http://repo1.maven.org/maven2/org/apache/ibatis/ibatis-core/3.0/ibatis-core-3.0.jar
http://repo1.maven.org/maven2/org/apache/camel/camel-activemq/1.1.0/camel-activemq-1.1.0.jar
...
最佳答案
依赖项不知道其“源存储库”,它可能不是唯一的,因此您将无法获得依赖项的“源 URL”没有真正解决它。一种方法(无需使用 Maven 内部 API 编写代码)是使用 dependency:purge-local-repository
.来自Maven Dependency Plugin文档:
dependency:purge-local-repository
tells Maven to clear all dependency-artifact files out of the local repository, and optionally re-resolve them.
运行该命令并将输出重定向到文件以进行后处理:
mvn dependency:purge-local-repository > raw.txt
正如我刚才提到的,如果您使用多个存储库,您可能需要进行一些后期处理以将“成功”下载与“失败”尝试分开。这是一个sample regex在 Rubular 上可能有助于实现这样的后处理(我提供了一些说明“问题”的内容)。
关于java - maven2 - 如何从 pom 文件中列出所有资源库 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3258475/