在cruiscontrol中设置环境变量



如何在Cruisecontrol中设置环境变量?

如果我试着这样做:

<exec command="set PATH="
                workingdir="d:AppLiteNewProjects"
                args = "%PATH%;D:QtSDKmingwbin"/> 

它不工作,我得到的是:

[cc]Dec-13 13:30:28 ExecBuilder -无法执行命令:set PATH= with arguments: %PATH%;D:QtSDKmingwbin

首先,您错误地使用了exec命令

命令为set,其参数应为PATH=%PATH%;D:QtSDKmingwbin

这个应该可以工作:

<exec command="set"
  workingdir="d:AppLiteNewProjects"
  args = "PATH=%PATH%;D:QtSDKmingwbin"/> 
其次,它不会产生

您设置的路径,将只对通过调用exec执行的shell/命令可用。调用后,它将不可用于进一步的命令/执行。
您没有说明您有什么用例或在哪里需要变量,因此我只能猜测您可以做什么。您可以执行以下操作:

  1. 在Windows中直接设置路径(如果可以的话)
  2. 编辑批处理文件,启动cruiscontrol并设置PATH
  3. 为需要PATH的命令创建一个批处理文件,并在其中设置PATH。
  4. 一些反任务允许为它们指定环境变量

在CruiseControl.net中,您可以在任务的配置中设置它们。它们放在一个环境块中:

<environment>
    <variable name="MyVar2" value="Var2Value" />
</environment>

这里是一个完整的示例:

<msbuild>
    <executable>C:WINDOWSMicrosoft.NETFrameworkv2.0.50727MSBuild.exe</executable>
    <workingDirectory>C:devccnet</workingDirectory>
    <projectFile>CCNet.sln</projectFile>
    <buildArgs>/p:Configuration=Debug /v:diag</buildArgs>
    <targets>Build;Test</targets>
    <timeout>900</timeout>
    <logger>C:Program FilesCruiseControl.NETserverThoughtWorks.CruiseControl.MsBuild.dll</logger>
    <environment>
        <variable name="MyVar2" value="Var2Value" />
    </environment>
 </msbuild>

相关内容

  • 没有找到相关文章

最新更新