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