【发布时间】:2011-12-16 02:54:03
【问题描述】:
我正在使用 Team Build (2010) 调用带有 Exec 任务的 msbuild 脚本,该任务调用批处理文件,该批处理文件又调用 msbuild。像这样:
<Exec Command="BatchFileThatCallsMSBuild.bat" />
当然,批处理文件会做很多其他的垃圾,或者我只是使用 MSBuild 任务。
问题是当批处理文件尝试调用 msbuild 时找不到它。
'msbuild' is not recognized as an internal or external command, operable program or batch file.
如何在 exec 任务中设置必要的环境?
我尝试将命令更改为:
<Exec Command="%22$(VS100COMNTOOLS)..\..\VC\vcvarsall.bat%22&BatchFileThatCallsMSBuild.bat" />
但没有骰子,仍然没有找到 msbuild。
【问题讨论】:
-
您是在批处理文件中指定 msbuild 可执行文件的完整路径,还是依赖相对路径(不能保证是您所期望的)?
-
批处理文件不加修饰地调用“msbuild”。
-
尝试指定 msbuild.exe 的完整路径。我不在开发电脑上(实际上,我在几小时前刚刚重新安装 Windows 的电脑上)所以我无法为你查找完整路径,但它应该在 %Windir%\ Microsoft.NET\Framework(框架版本)\
-
我从第三方提交的批处理文件中获取,因此无法对其进行调整。