通过调用svn和maven在jenkins中创建工作

use*_*772 1 svn build maven jenkins

现在我有一个批处理文件,其中包含使用svn更新项目的命令并调用maven'clean install'.如何在Jenkins中创建一些类似行为的工作?我应该把它写入ant文件(对不起,如果它是愚蠢的想法,我刚刚听说过它,但我不知道它到底是什么,我该怎么办)或者还有其他方法?

谢谢

Sla*_*lav 7

与arghtype建议一样,您需要使用Jenkin自己的源代码管理,将SVN配置为SCM源并提供凭据作为Maven构建作业的一部分.

如果您必须使用自己的本地工作副本,那么您的组织错误,您将失去让Jenkins管理SVN更改的所有好处,最终,该组织将在未来为您提供更多无法解决的问题.想想人们在这里给出的建议,并提出一个原因,你需要在Jenkins构建机器上拥有Jenkins管理之外的本地工作区.我唯一的猜测是:你的Jenkins和开发机器是一样的.这又不是应该如何组织的.Jenkins是CI服务器,而不是个人构建"automator".

无论如何,如果你仍然想做你说的话.

你认为你想要什么

  • 创建一个新的Freestyle作业
  • 在构建步骤下,单击添加构建步骤
  • 选择执行Windows批处理命令
  • 在那里写下你的批处理执行命令.您的工作目录将是Jenkins的$WORKSPACE,因此请相应地将路径更改为您要运行它的位置.

但是使用上面的配置,您可能还可以将批处理文件放在Windows调度程序下...您并没有真正使用Jenkins以及上述内容.

你应该做什么

  • 创建一个新的maven2/3构建作业
  • 在" 源代码管理"下,选择" Subversion"
  • 在Repository URL下输入远程SVN repo(即http://your.svnsever.com/path/to/project)
  • 在Build下,输入您的Root POM位置(这将相对于您的SVN结账位置,所以如果您的POM不足http://your.svnserver.com/path/to/project/maven/pom.xml,请输入maven/pom.xml.
  • 在目标和选项下,输入clean install
  • 单击保存

该源代码管理部将负责建立本地工作区和签出库到该工作区.默认情况下,每次触发新构建时,它都将svn update在该工作区上运行.

在Maven构建步骤会照顾你运行的Maven,但是请注意,它被配置为使用默认~/.m2/repository位置.如果您的本地maven仓库需要不同,请在Jenkins全局配置下更改此设置