巡航控制 - 如何在巡航控制中执行批处理文件以及如何使用巡航控制在不同的文件夹中发布

时间:2009-06-17 16:17:24

标签: msbuild cruisecontrol.net batch-file

1.我在巡航控制中执行批处理文件时遇到错误:

<exception><![CDATA[ThoughtWorks.CruiseControl.Core.Tasks.BuilderException: Command Line Build timed out (after 600 seconds)

我使用的代码是

 <exec>
    <executable>D:\DITBUILT.bat</executable>
 </exec>

2.我想使用巡航控制在不同的文件夹中发布..我正在使用代码...我无法在不同的文件夹中发布

<executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
<workingDirectory>D:\Cas_CC\SourceCode\PolandSME-MAIN\SRC\UI</workingDirectory>
<projectFile>CAS.sln</projectFile>
<buildArgs> /p:Configuration=Release /p:Platform="Any CPU" </buildArgs>      
<targets>Build</targets>
<logger>ThoughtWorks.CruiseControl.MsBuild.XmlLogger,D:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>

请帮帮我

  1. 如何使用巡航控制在不同的文件夹中发布
  2. 如何使用巡航控制执行批处理文件......
  3. 提前致谢

2 个答案:

答案 0 :(得分:2)

使用cmd.exe作为可执行文件并使用“/ c D:\ DITBUILT.bat”作为参数,可以解决批处理文件中出现的错误?

答案 1 :(得分:1)

我建议使用NANT巡航控制。

<tasks>
      <nant>
        <executable>C:\Nant\Nant0.86\bin\nant.exe</executable>
        <baseDirectory>.</baseDirectory>
        <buildFile>C:\NANT_SCRIPTS\build.xml</buildFile>
        <targetList>
          <target>YourProject_Publish</target>
        </targetList>
        <buildTimeoutSeconds>2000</buildTimeoutSeconds>
      </nant>
    </tasks>

在build.xml文件中,您可以使用NANT命令来执行您的bat文件,或者几乎可以执行任何其他操作。它也支持3.5框架。

 <exec program="C:\NANT_SCRIPTS\publish\YourProject.bat" />
    <delete dir="${web01}\yourSite.com\WebFolder" />
    <copy todir="${web01}\yourSite.com\WebFolder" >
      <fileset basedir="C:\CruiseControl\ProjectFolders\YourProject\Website" >
        <include name="*.aspx" />
        <include name="*.config" />
        <include name="*.master" />
        <include name="*.asax" />
        <include name="*.ascx" />
        <include name="*.sitemap" />
      </fileset>
    </copy>