【发布时间】:2012-02-08 07:20:57
【问题描述】:
我正在尝试设置 TeamCity 来构建我的项目,但我的 psake buildscript 失败了,原因被缩小为无法找到应该在路径上的 git 可执行文件。当我启动 PowerShell 并自己执行该操作时,一切正常。
Path环境变量的内容(如windows环境变量对话框中的系统变量列表,以及HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment\Path的注册表)是
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;c:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Git\cmd
然而 TeamCity 说它的 env.Path 只是
C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;c:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Windows\System32\WindowsPowerShell\v1.0
我已经重新启动了计算机(多次),但没有任何帮助。
为什么 TeamCity 构建代理的 PATH 变量与系统默认变量不同,我该如何解决?
【问题讨论】:
-
我不想猜测,但如果您将其作为 Windows 服务运行,则环境将来自运行该服务的用户。
-
不,没有解决方案。我放弃了 TeamCity,现在改用 CruiseControl.net。
标签: continuous-integration environment-variables teamcity psake teamcity-6