(1)到http://cruisecontrol.sourceforge.net/download.html下载Cruisecontrol
(2)到http://subversion.tigris.org/下载Subversion客户端
(3)到http://maven.apache.org下载maven2客户端
(4)安装Subversion客户端,并设置PATH变量,以便系统能找到svn命令,Windows下安装成功后会自动设置
(5)在Linux下可能还需要安装其他的包,以REHL4为例,还需要安装neon-0.27.2-1.i386.rpm,apr-0.9.12-2.i386.rpm,apr-util-0.9.12-1.i386.rpm,其中neon使用:rpm -i neon-0.27.2-1.i386.rpm进行安装,使用用:rpm -Uvh 进行对apr两个包更新
(6)解压cruisecontrol
(7)解压maven2
(8)添加构建工程,在projects下使用命令:svn co 工程的检出地址,检出整个工程,如果是https协议则需要接受有证书,如果是http那么可能需要在SCM中配置用户名和密码:http://username:password@checkouturl
(9)添加工程到cruisecontrol的配置文件config.xml中,配置如下:
<property name="maven" value="F:/Maven/apache-maven-2.0.9" />
<project name="Project_V1.0.0" buildafterfailed="false">
<listeners>
<currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
</listeners>
<bootstrappers>
<svnbootstrapper localWorkingCopy="projects/${project.name}" />
</bootstrappers>
<modificationset quietperiod="60">
<!--cvs cvsroot=":pserver:user@192.168.1.1:/forcvs/Project" module="ci"/-->
<svn localWorkingCopy="projects/${project.name}" />
</modificationset>
<schedule interval="300">
<maven2 mvnhome="${maven}" pomfile="projects/${project.name}/pom.xml" goal="clean | scm:update | verify"/>
</schedule>
<log logdir="logs/${project.name}">
<merge dir="projects/${project.name}/target/surefire-reports"/>
</log>
<publishers>
<onsuccess>
<artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/target/Project-1.0.0.war"/>
<!--<artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/database/init/mysql.sql"/>-->
</onsuccess>
<email mailhost="mail.163.com"
returnaddress="@163.com"
buildresultsurl="http://localhost:9090/buildresults/${project.name}"
skipusers="true" spamwhilebroken="true" >
<map alias="user" address="user@163.com"/>
<always address="user"/>
<failure address="user" reportWhenFixed="true"/>
</email>
</publishers>
</project>
(10)配置中使用SCM插件更新代码,所以也要确保pom.xml中也配置了SCM
<scm>
<connection>
scm:svn:https://project/trunk
<!--scm:svn:http://username:password@project/trunk-->
</connection>
<url>https://project/trunk</url>
<developerConnection>
scm:svn:https://project/trunk
</developerConnection>
</scm>
分享到:
相关推荐
标题与描述概述的知识点主要涉及了使用CruiseControl与Maven2进行持续集成的配置流程。这是一项在软件开发过程中非常关键的技术实践,它能够自动检测代码库中的更新,并自动执行构建、测试以及部署等任务,从而确保...
搭建CruiseControl+SVN+Maven+Tomcat持续集成环境,主要是为了实现代码的自动构建、测试和部署,从而提高开发效率,减少错误。整个过程涉及到多个工具的安装、配置和集成,确保每个环节都能正确工作,并通过权限管理...
总结,配置CruiseControl定时运行涉及以下几个关键步骤:安装CruiseControl、编写`cruisecontrol.xml`配置文件、设定构建触发器、定义构建步骤、配置监控与通知,最后启动或重启CruiseControl服务。通过这种方式,你...
CruiseControl支持十多种版本控制系统,比如CVS、SVN、Starteam、VSS等,对这些版本控制系统的调用,只需要配置相应的节点名称即可。 3.3.执行构建脚本 CruiseControl的自动构建是使用ANT工具来进行的,当然我们也...
2. **CruiseControl构建**:配置好`config.xml`文件,启动CruiseControl服务。 3. **Ant构建**:编写好Ant的`build.xml`文件,由CruiseControl调用来执行构建。 #### 五、小结 通过本文档,我们可以了解到Cruise...
- **CruiseControl**:安装并启动CruiseControl服务,通常通过修改`cruisecontrol.properties`配置文件来定制服务设置。 - **svnant**:这是一个Ant插件,用于在Ant构建脚本中执行Subversion操作,如获取最新代码。 ...
1. **源代码仓库**:CruiseControl与版本控制系统(如Git、SVN)交互,监控代码的变更。 2. **构建触发器**:当检测到源代码有更新时,触发构建过程。 3. **构建服务器**:执行构建任务,包括编译、测试、打包等。 4...
2. **集成源代码仓库**:将CruiseControl与版本控制系统(如Git、SVN)连接,以便在代码更新时自动启动构建。 3. **构建脚本**:编写Ant或Maven脚本,定义如何编译代码、运行测试和打包应用。 4. **监控与调整**:...
2. 配置:安装完成后,需要配置CruiseControl的XML配置文件(通常为cruisecontrol-config.xml)。配置项包括源码仓库地址、构建触发器类型、构建脚本路径等。 3. 启动服务:使用命令行工具启动CruiseControl服务。 4...
4. **插件扩展**:CruiseControl支持各种插件,允许用户根据需求定制构建流程,如集成不同的版本控制工具(Git、SVN)、构建工具(Maven、Ant)以及测试框架(JUnit、TestNG)。 5. **Web界面**:CruiseControl提供...
2. **创建CruiseControl.xml**:根据项目特点,编写CruiseControl.xml配置文件,定义项目的所有参数。 3. **启动CruiseControl**:运行CruiseControl服务,它会根据配置文件定期检查源代码并触发构建。 4. **监控...
完成配置后,启动 CruiseControl 服务,它将根据配置定时检查 SVN 中的代码变更,并在有变更时自动触发 Maven2 构建项目。构建过程包括编译源代码、运行测试、生成文档和打包,最后将结果存入 `artifactdir` 供团队...
2. **保持服务器运行**: 为了确保CruiseControl服务器持续运行,你需要配置服务管理工具(如Systemd或init.d脚本)来启动、停止和监控CruiseControl服务。 **简化CruiseControl配置** 3. **使用XML配置**: `config...
3. **集成工具**:CruiseControl 支持多种源代码管理工具,如 SVN、Git 等,并能与 Ant、Maven 等构建工具无缝配合,还支持 JUnit 和 NUnit 等测试框架的测试结果集成。 4. **Web 界面**:CruiseControl 提供了一个...
这些库可能包含了项目所需的各种开源工具,如构建工具(如Ant或Maven)、版本控制系统(如Git或SVN)和其他必要的软件包,确保CruiseControl能与这些外部系统无缝协作。 2. **lib**:这个目录存放CruiseControl运行...