自动构建脚本从批处理到MSBUILD / NANT

时间:2014-11-25 11:54:18

标签: batch-file msbuild nant msbuild-task

我正在尝试自动化C#(vs2008)解决方案的构建过程。

构建脚本是用我想要更改的批处理脚本编写的。我们使用Clearcase作为CM系统。我搜索了一些工具,如MSBUILD,NANT。

任何建议都是更好的解决方案,如MSBUILD和NANT中的示例脚本?

我没有看到任何有关MSBUILD和NANT记录良好的网站或任何有关每个任务描述的好教程。

我可以从哪里学习MSBUILD或NANT,并从头开始编写脚本?

1 个答案:

答案 0 :(得分:2)

我更喜欢第三种方式。您也可以使用devenv.com。它比NANT快,不需要NANT垃圾箱,可以在安装了VS的任何机器上运行。您还可以避免MSBUILD(http://support.microsoft.com/kb/964125)可能出错。

只需使用%path_to_devenv.com%\devenv.com "%path_to_sln" /<buildoption> BuildConfig

即可

就我而言,它是

%ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com "C:\Projects\XYZ\xyz.sln" /rebuild Debug

这样可以保证您的项目构建方式与在Visual Studio中构建项目的方式完全相同。

编辑:

现在我们知道要做多少工作,我将尝试概述如何为自动构建控件设置整个系统。

  1. 设置您的存储库(我希望已经完成 - 如果没有,请告诉我)
  2. 安装并设置Jenkins(https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins),包括用户,ClearCase-Credentials,ClearCase插件,MSBuild等(所有这些都可以在Jenkins插件界面中找到) - 这是最大的工作和平
  3. 在jenkins界面(名称,工作目录等)中创建并设置一个新项目
  4. 告诉jenkins使用源代码管理(例如subversion模块),输入ClearCase repos使用,设置所需的源代码管理行为
  5. 设置构建触发器(我建议每分钟检查源代码管理:* * * * *)
  6. 添加构建步骤并选择“使用MSBuild构建Visual Studio项目或解决方案” - 安装MSBuild插件(https://wiki.jenkins-ci.org/display/JENKINS/MSBuild+Plugin)后应显示此选项
  7. 设置.sln文件的路径(您已从存储库中检出)
  8. 如果需要,添加更多可选参数(例如/ p:Configuration = Release或Debug或其他http://msdn.microsoft.com/en-us/library/vstudio/ms164311%28v=vs.110%29.aspx
  9. 一起玩,直到它有效
  10. 顺便说一句,我建议将所有外部dll放入存储库。