use*_*453 4 msbuild visual-studio visual-studio-2017
OS: Microsoft Windows [Version 10.0.14393]
VS-版本: 2017 Community
当我运行时,vswhere.exe
我得到以下回复,并根据官方vswhere
文档,我可以建立路径msbuild
,这似乎工作:
C:\Users\user\Desktop>"C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe"
Visual Studio Locator version 1.0.62 [query version 1.10.80.60812]
Copyright (C) Microsoft Corporation. All rights reserved.
[...]
installationPath: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community
[...]
C:\Users\user\Desktop>"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe"
Microsoft (R)-Buildmodul, Version 15.1.1012.6693
Run Code Online (Sandbox Code Playgroud)
如果我启动位于的开发人员命令提示符,"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsMSBuildCmd.bat"
我会得到以下结果:
C:\Users\user>"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsMSBuildCmd.bat"
**********************************************************************
** Visual Studio 2017 MSBuild Command Prompt
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
C:\Users\user>where msbuild
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe
C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
Run Code Online (Sandbox Code Playgroud)
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe"
)来调用msbuild
构建C/C++/VC++项目.这有点错吗?VS 2017切换到msbuild的本地副本,如果您使用VS 2015命令提示符,您将看到不同的全局路径.
该where
命令列出了它在其上找到的所有匹配的可执行文件PATH
,但在运行msbuild
命令时,命令提示符仅使用第一个.
msbuild.exe
您看到的第二个是.NET Framework的一部分 - 这是MSBuild的一个版本,它作为.NET Framework的一部分集成并提供.与最新版本的Visual Studio安装的版本相比,此版本较旧.但出于兼容性原因,它可能会继续包含在.NET Framework中.它甚至可以构建许多项目,然后使用VS安装的目标和任务 - 只需要更改MSBuild本身的项目格式更改将是不兼容的(如用于.NET Core项目的新项目格式).
您应该始终使用VS 2017版本msbuild.exe
来始终获得与visual studio一致的构建结果.
归档时间: |
|
查看次数: |
2902 次 |
最近记录: |