我使用的是CruiseControl-2.7.1
CruiseControl:http://cruisecontrol.sourceforge.net/
SVN:http://subversion.tigris.org/
首先安装你的CruiseControl,你可以选择exe的文件下载,直接安装就可以,
然后设置你的环境变量,将svn添加到你的环境变量的path中
CruiseControl安装后的目录结构是:
其中CruiseControl(以下简称CC)自带ant1.7.0;文档在docs目录下,这里面包括config.xml的相关的参数设置说明;logs下面包括日志信息,可以通过在config.xml中指定日志路径和名称;projects下面放的是需要进行持续集成的项目,lib目录中放有cruisecontrol.jar和其他运行需要的jar;webapps下是cruisecontrol build结果的网站,可以通过访问 http://127.0.0.1:8080/dashboard来进行对你的项目进行编译发布到你指定的web容器上。
以下是我的一个项目的config.xml文件的配置:
xml 代码
- <cruisecontrol>
- <!--这个地方的项目名称要和你的projects目录下的项目名称一样-->
- <project name="potato">
- <listeners>
- <currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
- </listeners>
- <bootstrappers>
- <svnbootstrapper localWorkingCopy="projects/${project.name}" username="test" password="test" />
- </bootstrappers>
- <modificationset quietperiod="60">
- <svn localWorkingCopy="projects/${project.name}" username="test" password="test" />
- </modificationset>
- <schedule interval="3600">
- <!--这个地方配置的是使用ant来进行编译,后面的target是调用ant的那个任务,最后面的属性文件是我用来配置我的tomcat目录的,build.xml文件就是你工程下面的build文件-->
- <ant anthome="apache-ant-1.7.0" time="0400" buildfile="projects/${project.name}/build.xml" target="deploy" propertyfile="projects/${project.name}/ant.properties"/>
- </schedule>
- <log>
- <!--merge dir="projects/${project.name}/target/test-results"/-->
- <!--merge file="projects/${project.name}/dist/checkstyle.xml"/-->
- </log>
- <publishers>
- <onsuccess>
- <artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/dist/i941ok.war"/>
- </onsuccess>
- <htmlemail mailhost="inc-mx2"
- returnaddress="zhangjf1@gmail.com"
- skipusers="true"
- subjectprefix="[admin.Build.Server]"
- buildresultsurl="http://asd1-server:6636/dashboard"
- username="admin"
- password="admin"
- charset="UTF-8">
- <!--编译成功和失败发送的邮件地址-->
- <failure address="zhangjf1@gmail.com" />
- <success address="zhangjf1@gmail.com" />
- </htmlemail>
- </publishers>
- </project>
- </cruisecontrol>
把你的工程从svn上取下来放到你的projects目录下,启动的CruiseControl服务,在地址浏览器中输入http://127.0.0.1:8080/dashboard就可以看到你的项目的管理界面,你可以设置什么时候进行编译,也可以进行强制编译