本文转自:http://blog.csdn.net/markgoo/article/details/5739103

第一步,当然是安装这些软件了,

SVN — 我用的是TortoiseSVN , 方便与windows集成. CruiseControl.NET — 最新版本可以从这里获取: 点我  NANT — 构建工具,无需多说, 点我  还需要:IIS.

第二步, 打开C:/Program Files/CruiseControl.NET/server/ccnet.config(C:/Program Files/CruiseControl.NET为安装目录), 一开始其中是空的, 删掉所有内容,然后填入以下内容

[xhtml:nogutter] view plaincopy
  1. <cruisecontrol xmlns:cb="urn:ccnet.config.builder">
  2. <project name="Test1">
  3. <triggers>
  4. <intervalTrigger initialSeconds="0" seconds="1800"/>
  5. </triggers>
  6. <sourcecontrol type="svn">
  7. <trunkUrl>svn://mgytset/MGDataAccess/</trunkUrl>
  8. <workingDirectory>c:/CCNetTest1</workingDirectory>
  9. <executable>C:/Program Files/CollabNet Subversion Server/svn.exe</executable>
  10. <username>XXXXX</username>
  11. <password>XXXXX</password>
  12. </sourcecontrol>
  13. </project>
  14. </cruisecontrol>

其中intervalTrigger 这里配置了多少时间自动触发.这里设置了30分钟自动重新编译. 然后配置版本控制的信息: sourcecontrol : 使用哪种版本控制工具, trunkUrl :该项目的SVN路径, workingDirectory :配置的这个目录将作为CruiseControl.NET的工作目 录,CruiseControl.NET会将代码从SVN中 check out到这个目录中. executable :填入你机器上的SVN的可执行文件路径. username/password : SVN的用户名与密码.

这个时候可以先进入服务,把CruiseControl.NET服务启动了

然后进入IIS中的CCNET(默认名),点查看就可以进入到CruiseControl.NET的页面了.

点击右方Admin 下的Force 按钮来强制重新获取最新版本.过一会就能 看到Status 变成 Successful了.

做到这里.我们已经基本能够看到效果了,但是我们还有一个没有做, 就是现在没有编译, 接下来我们就要让这项目自动编译,然后让CruiseControl.NET来显示编译结果.

首先,我们需要给我们的项目创建一个NANT的build文件.以下是一个很基本的build文件,大家也可以去股沟一下更具体的配置方法.

[xhtml] view plaincopy
  1. <?xml version="1.0"?>
  2. <project name="MGDataAccess" default="build" basedir=".">
  3. <property name="debug" value="true" overwrite="false" />
  4. <target name="clean">
  5. <delete dir="bin" failonerror="false"/>
  6. <delete dir="obj" failonerror="false"/>
  7. </target>
  8. <target name="build" depends="clean">
  9. <csc target="library" output="bin/debug/MGDataAccess.dll"  debug="${debug}">
  10. <sources>
  11. <include name="*/*"/>
  12. <exclude name="MGDataAccess.build" />
  13. </sources>
  14. </csc>
  15. </target>
  16. </project>

这里面第一个target是clean,用来删除bin 以及 obj文件夹, 第二个target 是build,加了depends=”clean” 之后执行 build会首先执行clean的工作. exclude 这个是排除哪些文件不让其编译. 保存这个文件为MGDataAccess.build,放到你的项目目录中去.

* 对于NANT的build文件,有一个项目nantcontrib可以自动生成,但是我每次都失败了,各位也 可以去看看nantcontrib

然后再一次打开CruiseControl.NET的配置文件ccnet.config,在project node下面再加入以下内容:

[xhtml] view plaincopy
  1. <tasks>
  2. <nant>
  3. <executable>C:/Program Files/NAnt/bin/nant.exe</executable>
  4. <buildFile>C:/CCNetTest1/MGDataAccess.build</buildFile>
  5. </nant>
  6. </tasks>

executable :NANT的可执行文件路径. buildFile : 之前配置的build文件的路径.

这样之后再去force一下,就是项目编译之后的结果了,可以尝试故意让项目不能编译,然后commit到SVN,这个时候force一下,就会看 到项目的status为failed了

一个最基本的DEMO就完成了, 如果有任何问题请告诉我哦!

之后我还会将NUnit以及simian加入进来,让这个小DEMO更加完善.

[转]SVN + CruiseControl.NET + NANT 自动编译提交的项目最小DEMO相关推荐

  1. 第10步 (1)logback.xml日志配置(2) ftp(上传文件)服务器配置(3) idea注入和自动编译配置(4)项目提交gitee(5)fe助手和restlet client

    **************************************************************************************************** ...

  2. Android-Ant自动编译打包android项目 -- 2 ----签名与渠道包

    上篇介绍了怎么使用ant自动编译打包现有的android项目,这篇将继续介绍如果如何在ant打包应用的时候加入签名信息以及自动打包渠道包. 1. 加入签名信息: 在项目的根目录下建一个ant.prop ...

  3. Jenkins搭建.NET自动编译测试并实现半增量部署

    @hzl201 2020-04-13 09:26 字数 18724 阅读 3353 Jenkins搭建.NET自动编译测试并实现半增量部署 运维 jenkins 前言 以前写前端项目打包部署,都是手动 ...

  4. 淘宝网最佳实践之ABS自动编译

    文 / 李宇 李方 最早提出ABS的目的是为了把QA(Quality Assurance,品质保证)和PE(Project Engineering,项目工程)从编译任务中解放出来,从而避免重复劳动,提 ...

  5. linux(以ubuntu为例)下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件...

    原创,转载请注明:http://www.cnblogs.com/ycxyyzw/p/4555328.html  之前写过一篇<windows下Android利用ant自动编译.修改配置文件.批量 ...

  6. 如何使用NAnt 自动打包DNN模块 之二

    系列文章: 如何使用NAnt 自动打包DNN模块 之一 如何使用NAnt 自动打包DNN模块 之二 使用MSBuilder编译项目时,会出现找不到引用的DLL的问题.可以参考这里解决:http://w ...

  7. CentOS 创建SVN 服务器,并且自动同步到WEB 目录

    CentOS 创建SVN 服务器,并且自动同步到WEB 目录 标签: centossvnsubversion服务器 2013-12-06 10:09 5492人阅读 评论(0) 收藏 举报  分类: ...

  8. MyEclipse项目无法自动编译解决方案

    通过svn导入一个项目,然后把项目中classes文件夹所有文件删除了,没想到myeclipse就不再自动编译了. 网上找了一大堆解决方案,结果都千篇一律,连错别字都一样,不过其中一个提示到提醒了我, ...

  9. 一文搭建Vuepress博客/文档系统:搭建,导出,SEO,自动编译和部署,域名,HTTPS,备案等

    本文纯原创,搭建后的博客/文档网站可以参考: Java 全栈知识体系.如需转载请说明原处. 文章内容目录 文章内容目录 第一部分 - 博客/文档系统的搭建 博客/文档搭建前言 有哪些选择 我做了哪些尝 ...

最新文章

  1. H.264/H265码流解析
  2. setTimeOut()
  3. Ubuntu系统安装stardict(星际译王)词典
  4. 通过rsync实现数据备份
  5. EXSITS应该怎么用?
  6. 分析工厂模式中的问题并改造
  7. 使用 yield 减少内存消耗
  8. 互斥量和信号量的区别
  9. windows程序窗体创建流程模型A--利用基本数据类型
  10. java使用JMail通过QQ邮件服务器实现自动发送邮件
  11. 各种排序总结(五)快速排序
  12. html5d调用百度语音,易语言调用百度语音平台实现文字转换语音功能的代码
  13. 数据接口请求异常:error_springboot2.2.X手册:构建多元化的API接口,我们这样子设计
  14. 【To Understand! 回文串6 KMP算法】LeetCode 214. Shortest Palindrome
  15. 两边双虚线是什么意思_【宠物百科】哈士奇双血统是什么意思?
  16. laravel实现mysql读写分离
  17. 专访许鹏:谈C程序员修养及大型项目源码阅读与学习
  18. 量化投资:研报文本挖掘选股策略
  19. Leetcode刷题100天—剑指 Offer 50. 第一个只出现一次的字符(队列)—day13
  20. 【SCOI2009】粉刷匠

热门文章

  1. win10计算机如何切换用户名,Win10怎么修改本地账号的用户名 win10本地账户改名图文教程...
  2. Occupations(表分割问题)
  3. LeetCode Nth Digit
  4. (转)Android 使用com.j256.ormlite
  5. python smtp 群发邮件
  6. iOS SDK:iOS调试技巧
  7. decimal(numeric )、float 和 real 数据类型的区别
  8. ic卡消费管理系统_智能食堂管理解决方案 智能刷卡消费
  9. Spring3 表达式语言(SpEL)介绍
  10. WebService大讲堂之Axis2(7):将Spring的装配JavaBean发布成WebService