当前位置:  开发笔记 > 编程语言 > 正文

Maven SVN结帐示例

如何解决《MavenSVN结帐示例》经验,为你挑选了1个好方法。

关于我之前的问题 - > 是否有SVN Maven?,我去了使用页面 - > http://maven.apache.org/scm/maven-scm-plugin/usage.html找不到我想要的东西,这里我想做的:

我为ex指定的项目的结帐列表:

http:// mysvnurl/myprojectname我可以参数化项目名称

然后让我们说如果有3-4个或n个子项目(模块)(我也可以指定名称)我想要签出,并且我可以指定分支(主干)和修订.简化:

检查myprojectname的某些子项目(模块)主干

例如:

http:// mysvnurl/myprojectname/project1/trunk /*//获取所有内容
http:// mysvnurl/myprojectname/project2/trunk /*//获取所有内容

我如何用maven做到这一点,有更多经验的人可以解释如何做到这一点或指向我可以阅读如何的地方,我没有根据我的需要搜索任何内容.

谢谢



1> Pascal Thive..:

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

那么让我们回到这个问题,这是你可以scm:checkout在CLI上使用的方法:

mvn scm:checkout -DconnectionUrl=scm:svn:https://svn.dev.java.net/svn/glassfish-svn/trunk/v3 -DcheckoutDirectory=v3

我们可以想象将所有这些放在POM中并configuration在插件中声明这些参数(execution如果需要处理多个URL,则可以在几个中声明).可选地,你甚至可以玩一些排除或包括(现在很荣幸,见SCM-526).

...
  
  perform-checkout  
    
    myUrl  
    myDirectory  
    folder1/*,folder2/*
    
    
    
     checkout  
    

...

但我从来没有像这样使用它.为了以防万一,也许可以看看scm:bootstrap你可以用来从最小的POM 引导一个项目(参见使用POM引导一个项目).但在这两种情况下,我都不能100%确定这些目标是为了提供您正在寻找的自动化水平.

我越看你的问题,我就越认为svn:externals(即Subversion功能)就是你所追求的.这就是我用来在一个命令中检查多个中继的复杂项目的方法.

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有