下载依赖于本地资源库而不是“目标”一(Download dependencies to local

2019-10-18 11:38发布

我有一个项目,有pom.xml ,并依赖于大量依赖从外部(位于互联网远远..)。

所以,我想下载所有那些我依赖于我的“本地资源库”的依赖。

这是我尝试(我不需要做编辑,所以我用“确认”,这里因此,我不希望在结束了“目标”文件夹。):

mvn validate -Dmaven.repo.local=C:\my\.m2\repository dependency:copy-dependencies 

在结束-是的,我有很多的依赖被下载到"C:\my\.m2\repository" ,但其中一些去: C:\projects\myProject\java\trunk\target\dependency ,像这样的:

junit-4.8.1.jar
log4j-1.2.8.jar
mockito-all-1.8.2.jar

问题是:如何使这些被下载到"C:\my\.m2\repository"而不是"target"我的项目?

现在,正因为如此,依赖于在建设,因为他们期待在本地回购找到“的junit-4.8.1.jar”那些失败的另一个项目。

另一个尝试:

mvn validate -Dmaven.repo.local=C:\my\.m2\repository dependency:resolve

然后,这些依赖关系是不能解决的。

无法解析项目BLA-BLA-快照依赖:下面的文物无法解析:公地郎咸平:公地郎咸平:罐子:2.4,log4j的:log4j的:坛子:1.2.8,JUnit的:junit的:坛子:4.8。 1:找不到神器公地郎咸平:公地郎咸平:罐子:2.4 - > [求助1]

Answer 1:

Maven的做是因为你调用的目标依赖:复制依赖关系。 它将当前模块的依赖关系复制到

 ${project.build.directory}/dependency

见http://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html

我真的无法想象这些依赖关系并没有进入你的本地回购。 摆弄周围有一个脚本可能不是解决您的问题。 尝试

 mvn process-resources -U -Dmaven.repo.local=C:\my\.m2\repository

-U选项强制下载所有的依赖。 我建议使用process-resources ,但因为我的理解的validate应该没事了。



文章来源: Download dependencies to local repository but not to “target” one