我刚刚在我的一个构建服务器(Win Server 2008 R2)上安装了nodejs,该服务器托管着Bamboo远程代理。完成安装并重新启动后,我陷入了以下情况:
远程的Bamboo构建代理正在以用户MyDomain\MyUser的身份作为windows服务运行。当执行带有内联powershell任务的构建时,它会失败并显示以下错误(来自构建代理日志):
com.atlassian.utils.process.ProcessNotStartedException: powershell could not be started
...
java.io.IOException: Cannot run program "powershell"
...
java.io.IOException: CreateProcess error=2, The system cannot find the file specified
以MyDomain\MyUser的身份登录服务器后,我检查了PowerShell是否在路径中:
where powershell
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
我尝试了多次重新启动服务和重启机器,但没有成功。唯一有效的方法是将我的脚本作为一个批处理文件执行,并使用指向PowerShell的绝对路径 - 但我不想这样做。
我已经搜索了解决方案,但即使这个看起来相关: Hudson在更新到PowerShell 3后找不到powershell - 提出的解决方案也无法解决问题。
我错过了什么?