Java 如何使用Maven将工件及其依赖项下载到指定的目录(没有pom.xml)?
我需要做的是将一个工件从我的内部存储库(当前)及其所有依赖项下载到指定的目录。在没有实际下载源代码(并使用其Java 如何使用Maven将工件及其依赖项下载到指定的目录(没有pom.xml)?,java,maven,Java,Maven,我需要做的是将一个工件从我的内部存储库(当前)及其所有依赖项下载到指定的目录。在没有实际下载源代码(并使用其pom.xml)的情况下:我只需要从shell运行一个普通的maven命令并访问存储库中的二进制文件 我不需要将依赖项下载到本地存储库(即/plugins的行为),我希望将工件及其所有依赖项复制到指定的目录 大概是这样的: mvn super-downloader:download-everything -Dartifact=my.group:myArtifact:version -Ddi
pom.xml
)的情况下:我只需要从shell运行一个普通的maven命令并访问存储库中的二进制文件
我不需要将依赖项下载到本地存储库(即/plugins的行为),我希望将工件及其所有依赖项复制到指定的目录
大概是这样的:
mvn super-downloader:download-everything -Dartifact=my.group:myArtifact:version -Ddirectory=.
我所尝试的:
插件将依赖项复制到我的本地存储库(在~/.m2下),这不是我想要的
需要一个maven项目。我需要在没有pom.xml的情况下运行该命令
插件应该使用-DdependencyDepth=
,但它无法解析对xerces:xerces impl:2.6.2
的依赖关系。我手动将其上传到我的Nexus,但随后它未能找到不存在的XMLAPI:XMLAPI:2.6.2
有什么想法吗
谢谢。您所要求的似乎是一个公平的要求受的启发,我创建了一个简单的bash脚本来解决这个问题:
#mvn-copy.sh
mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:copy -Dmdep.useBaseVersion=true -DoutputDirectory=. -Dartifact=$1:$2:$3
mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:copy -Dmdep.stripVersion=true -DoutputDirectory=. -Dartifact=$1:$2:$3:pom
mvn -f $2.pom org.apache.maven.plugins:maven-dependency-plugin:2.8:copy-dependencies -DoutputDirectory=lib
要使用它,只需键入/mvn-copy.sh
。它将在当前目录下载主jar,然后将所有依赖项下载到lib
文件夹中
不是最好的解决方案,也不是最漂亮的解决方案,也不是我想要的,但它解决了问题,挽救了一天。参见: