MSBUILD:错误 MSB3428:无法加载 Visual C++ 组件“VCBuild.exe”

Posted

技术标签:

【中文标题】MSBUILD:错误 MSB3428:无法加载 Visual C++ 组件“VCBuild.exe”【英文标题】:MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe" 【发布时间】:2015-04-21 17:12:48 【问题描述】:

我一直在尝试安装nodejs。我尝试通过谷歌搜索,但严重的是我没有任何有效的解决方案。

我的第一个问题是

    为什么 Nodejs 需要 Microsoft Visual 组件?

其次,根据谷歌的建议,我尝试了以下事情

安装了 Visual C++ 2010(更新了变量中的路径)但之后 安装我遇到了更多错误,包括“MSBUILD:错误MSB3428: 无法加载 Visual C++ 组件“VCBuild.exe”。 通过https://github.com/TooTallNate/node-gyp 删除错误,但仍然无法正常工作。 再次卸载并安装Node js,但没有成功。

我有以下版本

节点 js 0.12 Python 2.7 Ruby 1.9.3 Windows 7 64 位。

当我运行npm-install 时,错误如下所示

MSBUILD : error MSB3428: Could not load the Visual C++ component 
"VCBuild.exe".To fix this, 1) install the .NET Framework 2.0 SDK, 2) 
install Microsoft Visual Studio 2005 or 3) add the location of the 
component to the system path if it is installed elsewhere. 

我的package.json如下:


 "name": "TRest",
 "version": "0.1.0",
 "devDependencies": 
     "grunt": "~0.4.2",
     "grunt-contrib-watch": "~0.5.3",
     "grunt-sass": "~0.11.0",
     "grunt-pixrem": "^0.1.2",
     "grunt-legacssy": "^0.2.0",
     "grunt-contrib-concat": "~0.3.0",
     "grunt-contrib-uglify": "~0.3.2",
     "node-bourbon": "^1.0.0"
  

【问题讨论】:

您是否从“Visual Studio 命令行”启动 npm(参见开始菜单)? VCBuild 是 VS2008(和更早版本)的一部分,所以看起来 npm 无法确定你有 VS2010。另外我不知道(updated path in the variable) 是什么意思,但你不应该手动执行任何操作,始终运行 VS 命令提示符。 nop.. 我正在从 cmd.exe 做 npm 的东西。更新的路径意味着我用可视路径更新了环境变量 您是否为 VS 设置了 all 环境变量(大概有 10 个)?您是否已经尝试过使用正确的 VS 命令提示符? 不确定 10 个变量.. VS 命令提示符我找不​​到 ruby 这个问题的相关标签如何? 【参考方案1】:

您可以通过这样做告诉 npm 使用 Visual Studio 2010...

npm install socket.io --msvs_version=2010

将 socket.io 替换为出现问题的包。

也可以为 npm 设置全局设置:

npm config set msvs_version 2010 --global

【讨论】:

这对我有用,全局命令还修复了其他打包的问题,​​如 bcrypt。【参考方案2】:

或者尝试npm install --global --production windows-build-tools

【讨论】:

然后是一个命令“npm config set msvs_version 2015 --global” :) 这对我有用。只需添加一个小事:我需要在 PowerShell 中运行它(以管理员身份运行)【参考方案3】:

使用具有管理权限的 PowerShell 并运行:

npm install --global --production windows-build-tools@4.0.0

之后它会顺利运行。

【讨论】:

【参考方案4】:

我在尝试安装 strongloop 时收到此错误“MSBUILD : error MSB3428: could not load the Visual C++ component “VCBuild.exe”。 我能够通过运行它来解决。

在你的窗口上找到节点 $ npm install -g 其中 $ 哪个节点 cd 进入目录后,在目录中 cd 进入 node_modules\npm 文件夹,最后: $ npm install node-gyp@latest

【讨论】:

【参考方案5】:

我个人得到了这个,因为无法获取 python2 路径。您可以安装 python 2 并在环境变量中设置路径,也可以在同事机器中的某个位置找到一个 node-gyp 模块,然后将其粘贴到您的 node_modules 文件夹中。

【讨论】:

以上是关于MSBUILD:错误 MSB3428:无法加载 Visual C++ 组件“VCBuild.exe”的主要内容,如果未能解决你的问题,请参考以下文章

MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装 .NET Framework 2.0 SDK;2) 安装 M

npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装

MSBuild 无法使用临时密钥签署 ClickOnce 清单(错误 MSB3326 和 MSB3321)

npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装

错误 MSB4019 - MSBUILD 正在寻找不存在版本的导入

msbuild 错误 MSB3191:在远程服务器中发布时无法创建目录