CruiseControl配置详解

CruiseControl是一个Java开源项目,用于自动构建多个项目。配置包括解压软件、手动检出项目到指定目录、确保项目有pom.xml文件以及配置config.xml。配置完成后,通过访问http://localhost:8080/dashboard可查看项目构建状态。目前,虽能生成War包,但未关联Maven进行部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、简介

CruiseControl(以下简称CC)是一个java开源项目,通过Build Loop,完成多个项目的自动构建,官方流程如下:




二、配置

1.将下载好的cruisecontrol-bin-2.8.4.zip解压后,目录结构如下图所示:


2.从官方结构图上可以看出,要让CC自动管理起你的项目,需要2样东西,项目源代码以及config.xml

  a.由于CC不支持第一次的项目检出,所以你需要手动地将项目检出到它指定的目录下:projects

            假定从SVN检出的项目名称为Test,则projects目录下就应该有个Test的项目存在,并且是受SVN管控的

            

       b.Test目录下必须存在一个pom.xml文件,从而让Maven来管控项目构建,之后会说

       c.项目放在对应位置后,接下来就是要配置config.xml文件让CC知道,这也是最重要的部分,配置标签可以参考官doc:http://cruisecontrol.sourceforge.net/main/configxml.html

       d:一般配置后的config.xml文件结构如下图所示

<cruisecontrol>
	<project name="Test" buildafterfailed="false"> --name和你在projects目录下的项目名必须完全一致。
		<listeners>  --监听项目的实时状态,如Buliding等
                       <currentbuildstatuslistener file="logs/${project.name}/status.txt" /> 
                </listeners>
		<bootstrappers>  --告诉CC从SVN更新代码
			<svnbootstrapper localWorkingCopy="projects/${project.name}/"
				username="admin" password="admin@" />
		</bootstrappers>  --监听30秒内项目是否在SVN中有变化。
		<modificationset quietperiod="30">
			<svn localWorkingCopy="projects/${project.name}/" username="admin" password="admin" useLocalRevision="true" />
		</modificationset>
		<schedule interval="300">  --每隔300秒,CC就会去检查并执行构建计划
			<maven2 mvnscript="D:/apache-maven-2.2.1/bin/mvn.bat" pomfile="projects/${project.name}/pom.xml" goal="clean integration-test" />
		</schedule>
		<log>  --合并编译时产生的测试日志
                     <merge dir="projects/${project.name}/target/surefire-reports" />
		</log>
		<publishers>
			<onsuccess> --成功后将war包发布到指定位置
				<artifactspublisher dest="artifacts/${project.name}" 
					file="projects/${project.name}/target/Test.war" />
			</onsuccess>
			<htmlemail mailhost="10.106.3.1" returnaddress="test@qq.com"<span style="white-space:pre"> --发邮件通知相关人
				defaultsuffix=""
				buildresultsurl="http://localhost:8090/cruisecontrol/buildresults/${project.name}"
				charset="UTF-8" skipusers="true">
				<always address="yourMail" />
			</htmlemail>
		</publishers>
	</project>
</cruisecontrol>

配置标签官网都有解释,唯一需要注意的就是,因为这里是整合Maven来发布项目,所以这里用的是Maven的指令计划

<schedule interval="30000">
	<maven2 mvnscript="D:/apache-maven-2.2.1/bin/mvn.bat" pomfile="projects/${project.name}/pom.xml" goal="clean integration-test" />
</schedule>
需要配置Maven的安装路径,并且通过maven2标签命令解析pom.xml文件执行相关命令

       

此时,在浏览器中访问http://localhost:8080/dashboard,就可以看到以下页面



绿色表示项目Build成功,红色相反,当然还有其他图标的状态表示,具体参见官网,当点击绿色图标后,就会转,但是由于没有配置Maven,所以CC也只能将War包发布到指定路径,还不能发布到Tomcat上,接下去,只要配置Maven,就可以将他们关联起来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值