cruisecontrol.net - 使用 CCNET 从特定位置调用 .bat 文件

标签 cruisecontrol.net sonarqube ccnet-config

我已经设置了 Sonar,并希望在我的每晚构建中运行代码分析。

我已经设置了夜间构建,但我在运行 Sonar 运行程序时遇到了一些问题。

要运行代码分析,我想导航到我在主解决方案文件夹内创建的名为\BuildAssets 的文件夹。要手动运行代码分析,我会在\BuildAssets 中打开命令提示符并运行:%SONAR_RUNNER_HOME%\Bin\sonar-runner.bat

我将如何在 CCNET 中进行设置?

我试过:

<exec> 
  <executable>%SONAR_RUNNER_HOME%\bin\sonar-runner.bat</executable>
  <baseDirectory>BuildAssets</baseDirectory>
  <buildTimeoutSeconds>$(slowBuildTimeout)</buildTimeoutSeconds>
</exec>

但这不起作用,因为它尝试运行 c:\cc\myBuild\code\BuildAssets\%SONAR_RUNNER_HOME%\bin\sonar-runner.bat

我也试过:

<exec> 
  <executable>cmd</executable>
  <baseDirectory>BuildAssets</baseDirectory>
  <buildArgs>%SONAR_RUNNER_HOME%\bin\sonar-runner</buildArgs>
  <buildTimeoutSeconds>$(slowBuildTimeout)</buildTimeoutSeconds>
</exec>

但这似乎也没有做任何事情。我敢肯定这很简单,但我不太精通 CCNET 配置。

最佳答案

我在 build args 元素中遗漏了 /C,所以我使用了:

<exec> 
  <executable>c:\Windows\System32\cmd.exe</executable>
  <baseDirectory>BuildAssets</baseDirectory>
  <buildArgs>/C %SONAR_RUNNER_HOME%\bin\sonar-runner</buildArgs>
  <buildTimeoutSeconds>$(slowBuildTimeout)</buildTimeoutSeconds>
</exec>

关于cruisecontrol.net - 使用 CCNET 从特定位置调用 .bat 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9566088/

相关文章:

powershell - 使用 PowerShell 查找所有已安装的应用程序?

MSBUILD 在命令行创建 _PublishedWebsites,但不在 CI 服务器上

.net - 如何用QTP实现巡航控制?

java - 自定义问题发布到 Sonar sonarqube?

.net - 如何在 CruiseControl.Net 中创建属性

azure - Windows Azure 中的持续集成服务器

java - 将 jacoco.exec 文件加载到 Sonar 中以进行多模块项目

cruisecontrol.net - 显示 "Activity"时让 CruiseControl.NET 使用长时间运行任务的输出

java - 如何设置 Eclipse,以便它在代码块后放置额外的空间?