teamcity building project无法启动MSBuild.exe.路径中的非法字符

Jon*_*Jon 7 msbuild teamcity

我正在尝试在teamcity中构建一个项目.它将执行TFS的检出,文件在构建服务器上本地.如果我在服务器上手动运行build命令,它可以工作:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\msbuild.exe C:\TeamCity\buildAgent\work\3446a5bd436eea87\Dev\Dev\project\myproj\myproj.csproj /t:build
Run Code Online (Sandbox Code Playgroud)

在Teamcity中,我有一个MSBuild的Build步骤:

构建fie路径是:Dev\Dev\project\myproj\myproj.csproj"工作目录留空mbuild版本:microsoft .net framework 4.0 msbuild toolsversion:4.0运行平台:X86目标:我试过构建"build"并留空命令行参数留空

如果我创建一个命令行构建任务并运行上面的命令行,它的工作原理.我不确定teammcity中命令行和msbuild任务之间有什么区别.

编辑

我在工作目录上尝试了一些变体:

项目中的输出路径设置为..\Build\Tools\myproj \

所以我将teamcity中的工作目录设置为:Dev\Dev\project\Build\Tools\myproj \

这没有用.

以下是teamcity的确切输出:

Starting: C:\TeamCity\buildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.MsBuildBootstrap.exe /workdir:C:\TeamCity\buildAgent\work\3446a5bd436eea87\Dev\Dev\project\Build\Tools\myproj /msbuildPath:C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
in directory: C:\TeamCity\buildAgent\work\3446a5bd436eea87\Dev\Dev\project\Build\Tools\myproj


Failed to start MSBuild.exe. Illegal characters in path.
System.ArgumentException: Illegal characters in path.
   at System.IO.Path.CheckInvalidPathChars(String path)
   at System.IO.Path.IsPathRooted(String path)
   at JetBrains.TeamCity.Utils.FileUtil.MakeFullPath(String path, String workDir) in         c:\BuildAgent\work\c2314fd21f15dc97\src\Utils\src\FileUtil.cs:line 48
   at JetBrains.BuildServer.MSBuildBootstrap.RunArgs.get_ProjectFile() in     c:\BuildAgent\work\c2314fd21f15dc97\src\MSBuildBootstrap\src\RunArgs.cs:line 156
   at     JetBrains.BuildServer.MSBuildBootstrap.Impl.MSBuildBootstrapFactory.Create(IClientRunArgs     args) in     c:\BuildAgent\work\c2314fd21f15dc97\src\MSBuildBootstrap.Core\src\Impl\MSBuildBootstrapFact    ory.cs:line 29
   at JetBrains.BuildServer.MSBuildBootstrap.Program.Run(String[] _args) in     c:\BuildAgent\work\c2314fd21f15dc97\src\MSBuildBootstrap\src\Program.cs:line 67
Run Code Online (Sandbox Code Playgroud)

Osc*_*das 1

尝试编辑构建配置并从构建文件路径选项中删除引号。

如果你有:

“开发\开发\项目\myproj\myproj.csproj”

只要让:

开发\开发\项目\myproj\myproj.csproj

我希望这有帮助。