hudson+ant+svn配置flash持续集成开发环境

一、为什么需建立持续集成开发环境

将ActionScript3.0源码编译成swf文件,通常我们都知道通过flash IDE或flashbuilder来完成,这样虽然能达到我们想要的效果,但是有一些缺点:

1、对于大的工程,编译的时间会需要更长,一不小心程序可能会崩溃,导致每次发布都是一件很痛苦的事情;

2、对于项目开发人员并不是都知道如何来配置整个工程,很多情况下某个人一般只需负责某个模块开发,这样会严重依赖于某个人,所以每次发布都要这个人来发布,这不够灵活,而且发布前需要人为保证svn上的项目能正常的运行(也就是确认每个开发人员负责的东西是否已经正确提交到svn上后,项目是否正常运行);

3、很难配置一个与服务器一样的部署环境,从而导致编译后的文件部署到服务器后可能不能使用;

4、编译是一个重复性的工作,如果这种工作用计算机来做,那就为我们节省了时间去做更有价值的事情;

5、无法自动化;

持续集成的优点:

1、极限编程中一项建议实践便是持续集成,持续集成是指在开发阶段,对项目进行持续性自动化编译、测试,以达到控制代码质量的手段; 

2、持续集成提供了及时发现问题、追踪问题、修复问题的机制,他替代了传统的在所有代码编写完毕后才提交QA部门进行测试的方法; 

3、持续集成对单元测试较为依赖,测试覆盖率越高,单元测试越准确,越能体现持续集成的效果。持续集成主要在以下方面提供好处。 

二、所用的开发工具

1、Hudson:Hudson.war

 Hudson 是一种革命性的开放源码 CI 服务器,它从以前的 CI服务器吸取了许多经验 教训。Hudson 最吸引人的特性之一是它很容易配置:很难找到更容易设置的 CI 服务器,也很难找到开箱即用特性如此丰富的CI 服务器。Hudson 容易使用的第二个原因是它具有强大的插件框架 ,所以很容易添加特性,例如添加tomcat插件后,可以方将build好的war包方便的部署到Tomcat里。

2、java:jdk1.6.0_07

3、ant:apache-ant-1.8.1

ant实现SVN代码更新和部署

4、tomcat:apache-tomcat-6.0.29.txt.exe

5、SVN:VisualSVN-server-2.1.5(SVN服务器).msi

             TortoiseSVN-1.6.10.19898-win32-svn-1.6.12.msi(SVN客户端)


三、配置持续集成开发环境

首先是Java的jdk安装,如果我没记错的话,java的jdk安装后环境变量就应该已经配置好了。


Ant的配置:
         ant下载后应该是一个压缩包,解压后,解压后所在路径这里用 ${ant_path} 代替。打开系统环境变量,新建ANT_HOME变量,值为 ${ant_path} 。然后再在系统变量path中加入如下内容:;%ANT_HOME%\bin;%ANT_HOME%\lib;

要实现ant可以从svn服务器上检出代码要使用svnant jar文件。

从网上下载svnant 包,下载地址:

http://subclipse.tigris.org/files/documents/906/49042/svnant-1.3.1.zip

将下载好的svnant 解压将 lib目录下的所有jar复制到ant主目录中的 lib目录下。

编写build.xml

要svn task任务可以使用要在build.xml中添加

<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" />  



使用ANT来编译代码需要我们有Flex SDK,Flex SDK是一个开源的开发工具包,可以免费使用,下载后解压到某个目录即可。

         至此,Ant配置完毕。

         安装Tomcat,如果你的tomcat是exe文件,就直接安装,否则,将压缩包解压到一个路径,我这里用 ${tomcat_path} 代替。同上打开系统环境变量,新建CATALINA_HOME变量,值为${tomcat_path}。

path变量中加入如下代码:;% CATALINA_HOME%\bin;
classpath变量中加入如下代码:; % CATALINA_HOME%\lib;

然后,转到${tomcat_path}下的bin文件夹下,有个startup.bat(for windows系列系统)或startup.sh(for unix系列系统)。如果是利用exe安装的启动tomcat服务器是在系统的管理下的服务中进行启动。

         至此,tomcat已配置完成并已经启动。

我们使用的Hudson.war,原来做过java web开发的一眼就能够看出来,这玩意扔到tomcat的webapps下就能够运行了,我们就这么干。

打开浏览器,输入如下地址:

http://localhost:8080/


这就是传说中那只小猫,看到它说明我们的tomcat已经安装成功,并且已经启动。现在我们将Hudson.war复制到${tomcat_path}/webapps文件夹下。在浏览器中输入如下地址:


http://localhost:8080/hudson


配置Hudson的第一步:

选择系统设置。

出现如下页面:


选择系统设置。出现如下页面:

 

图中路径描述了Hudson生成项目输出的目录,这个可以改到一个我们自己熟悉的目录,这里我就不改了。

下面是jdk配置:

因为hudson中可以配置多个jdk,这里要先给这个jdk起一个别名以识别不同的jdk,我选择使用java_jdk。在下面的JAVA_HOME中输入环境变量中的JAVA_HOME变量的值就可以了。我们可以通过点击新增jdk按钮增加不同的jdk。

 

下面是Ant的配置:

 

与jdk配置过程差不多,给出ant的路径,为ant起别名。

 

下面是maven的配置:

因为本文没有涉及maven配置的过程。

 

下面是版本控制工具配置:

由于我们使用的是svn,所以cvs那栏可以空着,在下面的subversion中配置使用的svn版本。我使用的是svn 1.6。所以选择如上图选项。

 

再有比较有用的就是这个邮件提醒功能如下图所示,这个功能为有邮件服务器的开发团队准备,当共同维护的程序代码有变动时会自动发送通知邮件。这么看起来Hudson还是比较厉害的。

下面是配置本机上的svn服务器,我们这里使用VisualSVN,由于VisualSVN采用界面化的配置,所以相对SVN 1.4.5要容易的多。安装后运行看到如下界面:

 

证明你的VisualSVN已经启动了,首先要有个身份,首先在User下建立一个用户,然后在左边的Repositories下建立一个自己的仓库,比如我们这里命名为Demo。

下面就是安装SVN客户端——TortoiseSVN。

然后我们构造一个actionscript3.0的工程,工具可以flashbuilder4.5等都可以。

我使用flashbuilder4.5构建一个工程名为Demo。其结构如下图:



最简单的as3工程。建好就可以了。到Demo工程所在目录下,新建build.xml文件,如下图。


build.xml文件是为了使用ant进行构建的配置文件;

这里将我的build.xml文件内容附上:



现在我们将我们的这个Demo工程上传到svn服务器上面去。


现在我们就能够在Hudson中新建一个构建项目了。打开浏览器,输入http://localhost:8080/hudson打开Hudson的主页,选择构建一个自由风格的软件项目,并给项目命名,这里使用testDemo。

 

点击OK后,进入项目的配置界面,其中最重要的是Source Code Management,在其中选择Subversion后会有如下图的展开。

 

在其中的Repository URL中填入我们刚才项目上传得地址,我这里是下面这个:https://localhost/svn/demo,最好不要使用https://完成的计算机名称,不然到时候配置subversion url验证的时候,验证成功了还是会说验证不通过

在下面我们还要指定我们要使用ant。

 

点击add build step按钮选择Invoke Ant得到如下展开:

 

在其中选择我们hudson中配置的ant。

至此简单的项目的配置过程已经配置完成。


至此简单的项目的配置过程已经配置完成。

四、测试配置:

配置完成后,下面的步骤就很简单了,就是测试我们刚才这一套配置的过程是否正确。

选择我们刚刚新建的项目进行立即构建。如果我们构建成功的话可以得到如下的页面:


构建后成功在C:\.hudson\jobs\testDemo\workspace\dist 找到编译后的文件




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值