Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/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 2 - Fatal编程技术网

Maven SVN签出示例

Maven SVN签出示例,svn,maven-2,Svn,Maven 2,关于我的上一个问题->,我浏览了使用页面->没有找到我想要的内容,下面是我想做的: 我为ex指定的项目的签出列表: 在那里我可以参数化项目名称 然后,假设我想签出的子项目(模块)数量为3-4个或n个(我也可以指定名称),并且我可以指定分支(主干)和修订。要简化: 签出myprojectname的某些子项目(模块)主干 例: *//获取所有信息 *//得到一切 对于maven,我该怎么做呢?能不能有人解释一下怎么做,或者给我指一个我可以阅读的地方,我在Google上没有搜索到任何我需要的东

关于我的上一个问题->,我浏览了使用页面->没有找到我想要的内容,下面是我想做的:

  • 我为ex指定的项目的签出列表:
在那里我可以参数化项目名称

然后,假设我想签出的子项目(模块)数量为3-4个或n个(我也可以指定名称),并且我可以指定分支(主干)和修订。要简化:

  • 签出myprojectname的某些子项目(模块)主干
例:

*//获取所有信息
*//得到一切

对于maven,我该怎么做呢?能不能有人解释一下怎么做,或者给我指一个我可以阅读的地方,我在Google上没有搜索到任何我需要的东西


谢谢

您的项目是按以下方式组织的吗

 root (pom.xml)
   +--- Module1 (pom.xml)
   +--- Module2 (pom.xml)
您有多模块构建吗

首先,你为什么想通过Maven结账?让构建服务器来完成这项工作,或者让您的IDE来完成…

我在前面的问题中提到的是SvnAnt任务的一种替代方案,因为它允许与来自Maven或插件(如发布插件)的Subversion存储库(以及其他存储库)进行交互。但我想我错过了你想做的事

让我们回到这个问题,下面是如何在CLI上使用:

mvn scm:checkout -DconnectionUrl=scm:svn:https://svn.dev.java.net/svn/glassfish-svn/trunk/v3 -DcheckoutDirectory=v3
我们可以想象将所有这些放在一个POM中,并在插件的
配置中声明这些参数(如果需要处理多个URL,可以在多个
执行中声明)。或者,你甚至可以玩一些或(现在很荣幸,请参阅)

。。。
执行签出
myUrl
我的目录
folder1/*,folder2/*
结账
...
但我从来没有这样用过。以防万一,不妨看看您可以使用它从最小POM引导项目(请参阅)。但在这两种情况下,我不能100%确定这些目标是为了提供您所期望的自动化水平


我越是看你的问题,我就越觉得(比如说,一个颠覆功能)是你想要的。这就是我用来在一个命令中签出具有多个主干的复杂项目的方法。

多模块构建通常要求子模块包含在父模块的目录中。但是Hudson/Jenkins似乎没有办法创建这种结构,除非所有模块都在SCM中的一棵树中。对于我的项目,情况并非如此。许多子级位于单独的scm树中(在github上)。如果maven能够创建这个结构,这将非常有帮助。它需要能够做到这一点,因为只有在父pom的情况下,子pom才可见,直到从scm获取它们。

@khmarbaise您有多模块构建吗?-是的,第一件事是,你为什么想通过Maven结账因为我想自动化这个过程。可以通过Hudson for CI签出多模块构建,也可以使用单个命令签出树。Maven本身没有必要这么做……可能我疏忽了一件事……@khmarbaise问题是我想检查某些子模块,而不是所有模块。那么你找到了这个问题的解决方案了吗?没有。我放弃了多模块构建,因为我发现当模块实际上是git子模块时,maven无法正确地进行多模块发布。git操作不正确。几个月前我就放弃了,所以我不记得细节了。因此,我们分别构建和发布模块(其中10个)。
...
<execution>  
  <id>perform-checkout</id>  
  <configuration>  
    <connectionUrl>myUrl</connectionUrl>  
    <checkoutDirectory>myDirectory</checkoutDirectory>  
    <excludes>folder1/*,folder2/*</excludes>
  </configuration>  
  <phase><!-- some phase --></phase>  
  <goals>  
     <goal>checkout</goal>  
  </goals>  
</execution>
...