【问题标题】:Specifying target platform with CruiseControl.NET使用 CruiseControl.NET 指定目标平台
【发布时间】:2011-03-09 23:49:06
【问题描述】:

我正在设置我的第一个自动构建服务器...到目前为止一切都很顺利,CruiseControl.NET 正确地检查了 VisualSVN 中的所有必需文件并构建解决方案...但是,这是我遇到问题的地方...

首先设置构建服务器的一个重要原因是因为我需要使用我的项目/设置文件同时定位 x86 和 x64。我无法找到执行此操作的方法。这是我目前的配置文件(相关位):

    <tasks>
        <devenv>
          <solutionfile>ProjectName.sln</solutionfile>
          <configuration>Release</configuration>
          <buildtype>Rebuild</buildtype>
          <project>ProjectName</project>
          <executable>C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com</executable>
          <buildTimeoutSeconds>600</buildTimeoutSeconds>
          <version>VS2010</version>
        </devenv>
    </tasks>

这可以正常工作,但是我希望 CruiseControl.NET 构建它两次,一次用于目标平台 x86,一次用于 x64。我该怎么做?

我怀疑我需要在配置块中添加一个额外的参数,但是似乎没有任何效果,而且我(奇怪的是)找不到具有此功能的示例...

感谢您的帮助...

【问题讨论】:

    标签: build-automation cruisecontrol.net


    【解决方案1】:

    在此处查看答案:How to specify the platform in devenv build CruiseControl.net

    <devenv>
        <configuration>Debug|x86</configuration>
    </devenv>
    

    【讨论】:

      【解决方案2】:

      您可以尝试改用 msbuild 任务,它应该允许您做您想做的事情...只需将适当的参数传递给它。首先,您必须在项目文件中设置配置,如here 所述。然后您可以添加几个 msbuild 目标(每个要构建的配置一个),这将与此类似:

      <msbuild>
          <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
          <workingDirectory>C:\svn\TRUNK\Project</workingDirectory>
          <projectFile>Solution.sln</projectFile>
          <buildArgs>/noconsolelogger /t:Rebuild /p:Configuration=Release</buildArgs>
          <timeout>900</timeout>
          <logger>C:\Program Files (x86)\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
        </msbuild>
      

      我想你也许可以使用 devenv 做类似的事情,但我不确定。

      【讨论】:

      • 任务块内也允许两个 devenv 任务
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多