0

注意:此问题适用于使用 MSBUILD 的 MSBUILDCOMMUNITYTASKS 加载项。特别是 SVNCHECKOUT 的功能以及它无法找到 svn.exe 文件,即使它位于 PATH 环境变量中包含的目录中。

所以我可能在这里遗漏了一些明显的东西,但在这一点上的帮助将不胜感激。

我有一些非常复杂的 msbuild 脚本,它们在 3 个不同的 Windows XP 系统上运行良好(并且已经运行了 2 年)。

我正在将它们移植到当前在 Windows 2008 Server 上的 64 位 Windows 上运行。我正在处理目录中的所有差异,并且我过去使用了错误的环境变量,当我转移到新的操作系统时,这些变量无法正常工作。

但是我现在被 SVNCHECKOUT 命令给我这个错误困住了:

C:\Program Files (x86)\MSBuild\somedirectory\someprojfile.proj(44,5): error MSB4018: The "SvnCheckout" task failed unexpectedly.\r
C:\Program Files (x86)\MSBuild\somedirectory\someprojfile.proj(44,5): error MSB4018: System.Exception: Could not find svn.exe.  Looked in PATH locations and various common folders inside Program Files.\r

以下目录位于 PATH 中:

C:\Program Files (x86)\CollabNet\Subversion Client\

我可以从那里运行 svn.exe

我可以使用 SVNCLIENT 指令指向文件所在的位置,但我没有运气这样做。

我正在使用的版本明智

msbuild:框架 v3.5
msbuildcommunitytasks:从 2008 年 12 月 10 日开始每晚构建(它修复了使我无法使用“稳定”版本的错误)
操作系统:windows server 2008R2 SP1

4

2 回答 2

0

如果您正在运行批处理脚本,我会先在批处理脚本中设置路径

set path=$path;'新路径'; <--- 请检查这个语法,因为我很久以前就使用过它

如果您从 Visual Studio 环境中运行它,请确保它确实使用了 Windows Path 变量,如果没有,请以某种方式在其中包含您的路径。

为了快速调试,您始终可以使用确切的路径,如果可行,则使用路径变量。有可能是其他事情出错了。

于 2011-07-21T18:59:38.023 回答
0

好吧,这显然是 MSBUILDCOMMUNITYTASKS 中的一个错误

我安装了 nightly build create 2011-06-27,它现在​​可以工作了。这总是让我对他们的软件感到紧张,因为它似乎不受支持,但到目前为止,我会给予开发人员信任——他们还没有用更新的代码破坏我需要的任何东西。

有效的版本:
版本:1.3.0.514 日期:2011 年 6 月 27 日

于 2011-07-22T13:01:21.247 回答