MSBuild - 由于无效路径 (Visual Studio 2019) 导致 MSB4019

4

我在通过命令提示符使用VS2019构建C++解决方案时,出现以下错误:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\Microsoft.Cpp.ToolsetLocation.props(50,3): error MSB4019: 未找到导入的项目"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160Platforms\Win32\Platform.props"。请确认导入声明中的表达式“C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160Platforms\Win32\Platform.props”是否正确,并且文件存在于磁盘上。

观察后发现,这显然是某个props文件内部创建的路径存在问题,但不太清楚为什么以及从哪里出现了这个问题。

如果有任何指针或建议,将不胜感激。

提前致谢。


首先,您是否浏览了路径并找到了相关文件 Platform.props - Mr Qian
3个回答

4
这不是由于安装问题引起的。这是由于传递给MSBuild.exe的VCTargetsPath引起的。在VS2017中,它期望在构建命令中传递VCTargetsPath,而如果我们在VS2019中传递该值,则会构造无效路径而失败。因此,在从命令中删除VCTargetsPath后,所有操作都正常运行。

3

MSBuild - MSB4019 因无效路径而出错(Visual Studio 2019)

安装 VS2019 时出现了一些错误。

为了解决这个问题,请尝试以下步骤:

1) 打开 VS 安装程序,并确保已安装 v142 构建工具。

enter image description here

或者在管理员模式下的命令提示符中运行以下命令:npm install --global --production windows-build-tools。如果您没有npm,请安装它,否则此方法将无法使用。

2) 我发现v160Platforms没有\,这是否与您的描述相同?

请创建一个名为VCTargetsPath的新环境变量,并将其值设置为:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\

3) 在VS安装程序中进行修复或者更新您的VS到最新版本。

然后以管理员身份使用VS2019开发人员命令提示符运行您的命令。

此外,您可以在命令行中使用-verbosity:detailed来查看详细的构建日志以检查是否存在明显的错误。更多信息可以查看this similar issue

VC140的VCTargetsPath是什么? - eri0o
@eri0o,C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\ - Mr Qian
谢谢,使用vs2019构建工具有些棘手。 - eri0o

2

今天我遇到了完全相同的问题。VCTargetsPath的系统环境路径末尾缺少一个斜杠。

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\ **<--- end slash**

你应该只分享解决方案,否则你可以在问题下面评论。 - Spring

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