Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven如何在不下载整个主干的情况下下载SVN子项目的所有依赖项?_Svn_Maven - Fatal编程技术网

Maven如何在不下载整个主干的情况下下载SVN子项目的所有依赖项?

Maven如何在不下载整个主干的情况下下载SVN子项目的所有依赖项?,svn,maven,Svn,Maven,我正在下载SVN的一个maven项目。这个项目是一个更大项目的一部分 当我安装该POM的mvn时,我会因为没有POM父级而出错 如何让maven下载POM所需的所有依赖项,而不必下载整个项目主干 编辑 例如,我想下载、编译并运行示例:在构建阶段,Maven对版本控制系统一无所知。因此,必须有人将所有必需的依赖项(包括所有父POM)安装到本地/团队Maven存储库中 如果没有这样的存储库,那么您将不得不签出整个内容,并自行安装mvn。在此之后,您可以删除它并使用一个模块,前提是项目的其余部分不会改

我正在下载SVN的一个maven项目。这个项目是一个更大项目的一部分

当我安装该POM的mvn时,我会因为没有POM父级而出错

如何让maven下载POM所需的所有依赖项,而不必下载整个项目主干

编辑
例如,我想下载、编译并运行示例:

在构建阶段,Maven对版本控制系统一无所知。因此,必须有人将所有必需的依赖项(包括所有父POM)安装到本地/团队Maven存储库中


如果没有这样的存储库,那么您将不得不签出整个内容,并自行安装mvn。在此之后,您可以删除它并使用一个模块,前提是项目的其余部分不会改变。

@eskalera,SCM插件只是提供了可以从中下载源代码的repo。在我们的情况下,是后备箱。下载完成后,将继续构建。SCM插件对pom在构建过程中所需的依赖项没有任何概念。它只能查看目标回购协议


唯一的方法是下载整个主干,这将解决您的所有依赖性问题,并按照maba的建议,删除不太可能更改的源代码。

是的,我希望Maven这样做。但是Maven不能用svn URL跟踪POM父母并只下载我的有效POM吗?@eskalera不,不行。Subversion只是一个源存储库,而maven使用二进制存储库,如Artifactory和其他。它们可以结合下载pom父存储库和存储库。Maven SCM插件不是这样做的吗?@maba这就是我的意思。SVN可以指出pom的位置,maven将下载efecctive pom。我不敢相信没有这样的东西存在。我在答案中补充了关于版本控制系统的说明。正如@maba指出的,Maven使用的源存储库和工件存储库是不同的。开始从源存储库获取随机源是个坏主意,因为这会破坏构建的可复制性。