我已经设置了 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/