如何在Cruisecontrol中设置环境变量?
如果我尝试这样做:
<exec command="set PATH="
workingdir="d:\AppLiteNew\Projects\"
args = "%PATH%;D:\QtSDK\mingw\bin\"/>
它不起作用,我得到的只是:
[cc] Dec-13 13:30:28 ExecBuilder - 无法执行命令:设置PATH =参数:%PATH%; D:\ QtSDK \ mingw \ bin \
答案 0 :(得分:7)
命令为set
,其参数应为PATH=%PATH%;D:\QtSDK\mingw\bin\
这应该有效:
<exec command="set"
workingdir="d:\AppLiteNew\Projects\"
args = "PATH=%PATH%;D:\QtSDK\mingw\bin\"/>
您设置的路径仅对通过调用exec执行的shell /命令可用。通话结束后,将无法进一步执行命令/执行 您没有说明您拥有的用例或您需要变量的位置,因此我只能猜测,您可以做什么。 您可以执行以下操作:
答案 1 :(得分:1)
在CruiseControl.net中,您可以在任务配置中设置它们。他们进入一个环境区块:
<environment>
<variable name="MyVar2" value="Var2Value" />
</environment>
以下是完整的示例:
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
<workingDirectory>C:\dev\ccnet</workingDirectory>
<projectFile>CCNet.sln</projectFile>
<buildArgs>/p:Configuration=Debug /v:diag</buildArgs>
<targets>Build;Test</targets>
<timeout>900</timeout>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
<environment>
<variable name="MyVar2" value="Var2Value" />
</environment>
</msbuild>