我刚刚开始使用CruiseControl.Net建立持续集成服务器。为了简单起见,我使用Visual Studio Task来执行构建,将其指向项目解决方案文件。但是,当构建过程发生时,CC.Net成功从Subversion获取最新的源版本,并且似乎运行devenv命令。然后构建过程失败,但没有解释原因。这是输出:

  

建立失败
  项目:MyProject
  建立日期:2009-09-09 16:31:13
  运行时间:00:00:49
  集成请求:仪表板触发了构建(ForceBuild)

     

自上次构建(0)以来的修改

     

测试运行:0,失败:0,未运行:0,   时间:0秒无测试运行此   项目没有任何测试

页面上没有显示任何其他内容。我的XML日志也没有显示任何构建结果。

这是我的配置文件:

<!--<ccnetconfig><configurationVersion>1.4</configurationVersion></ccnetconfig>-->
<cruisecontrol>
  <project name="MyProject">
    <workingDirectory>C:\Users\Builder\Desktop\builder-pc\MyProject</workingDirectory>
    <sourcecontrol type="svn">
      <trunkUrl>svn://builder-pc/MyProject/trunk</trunkUrl>
      <workingDirectory>C:\Users\Builder\Desktop\builder-pc\MyProject</workingDirectory>
      <executable>C:\Program Files\Subversion\bin\svn.exe</executable>
      <autoGetSource>True</autoGetSource>
      <tagOnSuccess>True</tagOnSuccess>
    </sourcecontrol>
    <tasks>
      <devenv>
        <solutionfile>C:\Users\Builder\Desktop\builder-pc\MyProject\trunk\MyProject.sln</solutionfile>
        <configuration>release</configuration>
        <buildtype>Rebuild</buildtype>
        <executable>C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe</executable>
        <buildTimeoutSeconds>600</buildTimeoutSeconds>
      </devenv>
    </tasks>
  </project>
</cruisecontrol>

我故意删除了SVN用户名和密码等内容。

使用VS命令提示符构建解决方案,但有警告。这是使用CC.Net将使用的相同的swtiches。

有人可以帮忙吗?它是否失败,因为没有运行单元测试,或者是因为警告?或者最好切换到MSBuild或NAnt而不是使用Visual Studio Task?

有帮助吗?

解决方案

如果构建日志中没有有用的信息,请尝试查看服务器日志以获取有关失败的信息。

其他提示

我认为您在xml日志文件中没有看到任何输出的原因是因为您的<publishers>中没有相应的<project>部分。

尝试:

<publishers>

  <xmllogger />

</publishers>

尝试使用MSBuild而不是devenv.exe运行构建。如果日志已合并到xml中但未在Web仪表板中正确显示,请确保适当的 xsl转换已启用。此外,正如Scrappydog所提到的,添加xmllogger发布者(虽然如果您根本没有定义任何发布者,默认情况下应该添加,您可以在“项目配置”页面上查看仪表板。

您应该在同一路径中使用 devnev.com (请注意文件扩展名为 .com ,而不是.exe)(即C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE),而不是devnev.exe。

<executable>块是可选的,来自 CruiseControl。 NET文档,它将使用最新版本的devnev.com,而不是devnev.exe。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top