我在kotlin中定义了一个构建步骤,该步骤从这样的路径加载powershell脚本:
powerShell {
scriptMode = file {
path = "path\to\file.ps1"
}
}
文件已成功加载并运行,但是问题在于脚本需要引用代理配置参数,例如MSBuildTools15.0_x64_Path
。如果我使用内联脚本,则可以通过%MSBuildTools15.0_x64_Path%
访问该参数。
是否有一种方法可以访问此变量而不必将其声明为环境?我知道这是否在环境中会在脚本中调用${env:MSBuildTools15.0_x64_Path}
,但如果有正确的方法,我宁愿不重新声明相同的内容。
如postanote所述,问题出在范围上。代理变量对脚本不可见,因为它在闭包范围内运行。这意味着您必须将变量显式发送给它。我的操作是在powershell脚本的开头定义一个param
,就像您通常希望的那样: