在不安装Visual Studio的情况下获取msbuild.exe


68

如何在不安装那些疯狂的Visual Studio程序的情况下获取msbuild.exe?

我需要它来进行npm安装才能完成工作。我在Windows 7上,无法在线获得旧版本的Visual Studio 2013 Express。


2
据我所知,它随.NET框架一起提供。否则,仅需要Windows SDK。
leppie

5
@leppie从VS 2013开始,它不再是.NET Framework的一部分。较旧的版本仍包含在框架中。
Mike Zboray 2014年

Answers:


110

最新(截至2019年1月)的独立MSBuild安装程序可以在以下位置找到:https : //www.visualstudio.com/downloads/

向下滚动到“ Visual Studio 2019的工具”,然后选择“ Visual Studio 2019的构建工具”(尽管名称,该名称适用于不需要完整IDE的用户)

有关其他信息,请参见此问题。


19
花了一段时间才找到MSBuild.exe安装位置。默认情况下,它在这里:C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin
Nikola M.

2
例如,请参阅此问题,其中详细介绍了如何仅安装Visual Studio 2017构建工具(而不是IDE)。
李慧夏

5
现在,该工具列在下方,Tools for Visual Studio 2017而不是该Other Tools and Framework部分。
Frank Liu

需要下载多少带宽?
Smart Manoj

2
C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ BuildTools \ MSBuild \ Current \
Bin-

23

它曾经与.NET框架一起安装。MsBuild v12.0(2013)现在捆绑为独立实用程序,并且具有自己的安装程序。

http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=40760

要从MsBuild脚本中引用MsBuild.exe的位置,请使用默认的$(MsBuildToolsPath)属性。


1
但是此版本已过时(现在)。我如何获得v15?
InTheNameOfScience '18

1
@Rigel我不知道您是否特别想要VS2015的构建工具,但是这个问题涉及有关获取2017工具的一些细节。
李慧夏

0

使用@Nicodemeus答案中的链接下载MSBuild是可以的,但是直到我将这些密钥添加到寄存器中后,安装才中断:

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSBuild\ToolsVersions\12.0]
"VCTargetsPath11"="$([MSBuild]::ValueOrDefault('$(VCTargetsPath11)','$(MSBuildExtensionsPath32)\\Microsoft.Cpp\\v4.0\\V110\\'))"
"VCTargetsPath"="$([MSBuild]::ValueOrDefault('$(VCTargetsPath)','$(MSBuildExtensionsPath32)\\Microsoft.Cpp\\v4.0\\V110\\'))" 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.