MSBuild.exe未找到,cmd.exe

7

我最近安装了Visual Studio 2017,MSBuild.exe不应该随之而来吗?其中一个bash脚本在调用它,但找不到任何东西。

这是build.bat的部分代码,产生了错误(您可以在此处看到整个文件)

MSBuild.exe mpc-hc.sln %MSBUILD_SWITCHES%^
 /target:%BUILDTYPE% /property:Configuration="%BUILDCFG% Filter";Platform=%1^
 /flp1:LogFile=%LOG_DIR%\filters_errors_%BUILDCFG%_%1.log;errorsonly;Verbosity=diagnostic^
 /flp2:LogFile=%LOG_DIR%\filters_warnings_%BUILDCFG%_%1.log;warningsonly;Verbosity=diagnostic
IF %ERRORLEVEL% NEQ 0 (
  CALL "%COMMON%" :SubMsg "ERROR" "mpc-hc.sln %BUILDCFG% Filter %1 - Compilation failed!"
  EXIT /B
) ELSE (
  CALL "%COMMON%" :SubMsg "INFO" "mpc-hc.sln %BUILDCFG% Filter %1 compiled successfully"
)

你的Bash脚本没有调用它。证据:检查你的问题,我看不到任何Bash脚本调用它。 - user1228
在脚本的相关部分进行编辑 - user1228
@Will编辑,这里 - Valerii Gruu
在VS2017中找回它很难。你必须使用“VS2017开发人员命令提示符”来确保设置了正确的路径。你没有提到使用它,所以可能是你忘记做的事情。 - Hans Passant
2
@HansPassant使用“VS 2017开发人员命令提示符”启动命令,并使用“where msbuild”显示了两个位置:一个在Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin,另一个在C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe。我猜我会使用第一个位置,并希望一切顺利。 - Valerii Gruu
显示剩余4条评论
1个回答

12
您可以使用随附于 Visual Studio 2017vswhere1。它位于 "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe"
然后,通过 vswhere -nologo -latest -property installationPath 检索到 MSBuild.exe 路径的一部分,例如:C:\Program Files (x86)\Microsoft Visual Studio\2017\Community。根据您想要使用的 msbuild 版本,您现在可以猜测其余路径:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\VERSION\Bin\MSBuild.exe

其中 VERSION 是例如版本 installationVersion: 15.3.26730.12(由 "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -property installationVersion 输出)的 15.01请参见GitHub

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接