如何获取 pom.xml 中提到的所有指定 jar 和传递依赖的 jar?

Posted

技术标签:

【中文标题】如何获取 pom.xml 中提到的所有指定 jar 和传递依赖的 jar?【英文标题】:How to get all the specified jars mentioned in the pom.xml and transitively dependent jars? 【发布时间】:2016-04-14 03:34:59 【问题描述】:

我只有 POM 文件,我需要使用它编写一个脚本来自动下载所有依赖文件并输出到自定义提到的路径。

我只是想在命令行中使用 mvn 命令实现上述目的。

【问题讨论】:

【参考方案1】:

听起来你在找mvn dependency:copy-dependencies

dependency:copy-dependencies 获取项目直接依赖项和可选传递依赖项的列表,并将它们复制到指定位置,如果需要,剥离版本。这个目标也可以从命令行运行。

从项目根目录,在命令行调用

mvn dependency:copy-dependencies -DoutputDirectory=...

会将您的所有项目直接和传递依赖项复制到指定的output directory。如果这些依赖项尚未在您的本地 Maven 存储库中,它们将从 Maven Central(或自定义存储库)下载。

【讨论】:

有没有办法下载 标签设置为 true 的依赖项?我无法编辑二级传递依赖 jar 中可用的 POM 文件。 @DineshRavi 不,optional dependencies 不应该被继承,因此 Maven 不会将其视为传递依赖。没有办法解决这个问题。

以上是关于如何获取 pom.xml 中提到的所有指定 jar 和传递依赖的 jar?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 maven pom.xml 创建 jar

maven项目 pom.xml文件解析

TestNG 在运行 pom.xml 中提到的所有测试套件之前运行一次

如何配置pom.xml用maven打包java工程

pom文件必须和maven版本一致吗

如何配置pom.xml用maven打包java工程