5

我正在寻找这样的东西:

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

...
4

2 回答 2

4

依赖项不知道它的“源存储库”可能不是唯一的,因此如果不实际解析它,您将无法获取依赖项的“源 URL”。一种方法(不使用 Maven 内部 API 编写代码)是使用. 从Maven 依赖插件文档:dependency:purge-local-repository

运行该命令并将输出重定向到文件以进行后处理:

mvn dependency:purge-local-repository > raw.txt

正如我刚才提到的,如果您使用多个存储库,您可能需要进行一些后期处理,以将“成功”下载与“失败”尝试区分开来。这是一个关于 Rubular 的示例正则表达式,它可能有助于实现这样的后处理(我提供了一些说明“问题”的内容)。

于 2010-07-17T03:06:06.003 回答
2

您可以使用Maven 依赖插件来分析 POM 的依赖关系。

mvn dependency:list -DoutputAbsoluteArtifactFilename=true -DoutputFile=dependencies.txt
于 2010-07-16T07:31:20.507 回答