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

时间:2015-02-20 05:04:47

标签: python ruby node.js msbuild node-gyp

我正在尝试很长一段时间安装nodejs。我尝试通过谷歌搜索,但认真的是我没有任何有效的解决方案。

我的第一个问题是

  1. 为什么Nodej需要Microsoft Visual组件?
  2. 其次根据谷歌的建议我尝试了下面的事情

    • 已安装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"
      }
    }
    

5 个答案:

答案 0 :(得分:13)

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

npm install socket.io --msvs_version=2010

将socket.io替换为产生问题的软件包。

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

npm config set msvs_version 2010 --global

答案 1 :(得分:3)

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

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

此后它将正常运行。

答案 2 :(得分:2)

我试图安装strongloop并得到此错误" MSBUILD:错误MSB3428:无法加载Visual C ++组件“VCBuild.exe”。 我能够通过运行来解决这个问题。

在Windows上找到节点 $ npm install -g $哪个节点 cd进入目录后,在目录cd里面进入node_modules \ npm文件夹,最后: $ npm install node-gyp @ latest

答案 3 :(得分:2)

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

答案 4 :(得分:0)

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