VS2019-无法将msbuild识别为内部或外部命令

问题描述 投票:0回答:1

我正在使用VS2019社区,并且已经设置了预构建事件:

msbuild "$(ProjectPath)" /t:Clean

我遇到错误:

  'MSBuild' is not recognized as an internal or external command,
  operable program or batch file

这怎么可能?该命令不是应该内置到Visual Studio中吗?

我已经检查了this并试图设置路径环境,但这无济于事。

VS2019中的此命令是否还有其他人遇到相同的问题?

visual-studio msbuild
1个回答
0
投票

在我的机器上有效的步骤:

  1. 请参见this,首先我们需要确保MSBuild可以被cmd.exe识别。

  2. 如果cmd.exe可以识别该命令,但是VS的构建事件不能识别该命令,则重新启动PC可以帮助解决此问题。

    (有些奇怪的是,对于我的VS,直到重新启动计算机后仍无法识别它)]] >>

  3. 对于VS2019,正确的msbuild路径为C:\Program Files (x86)\Microsoft Visual Studio\2019\xxx\MSBuild\Current\Bin

  4. 这是另一个解决方法:

    除了将msbuild.exe的路径添加到Environment Path并在pre-build事件中调用它之外,您还可以考虑使用MSBuild Task

将下面的脚本添加到xx.csproj :(。net框架中的工作...)

  <Target Name="MyCleanBeforeBuild" BeforeTargets="BeforeBuild">
    <MSBuild Projects="$(ProjectPath)" Targets="clean"/>
    <!--<Message Text="Custom Clean" Importance="high"/>-->
  </Target>
© www.soinside.com 2019 - 2024. All rights reserved.