无法通过npm安装socket.io

时间:2015-04-28 08:53:48

标签: windows node.js sockets socket.io npm

我安装了nodejs v0.12.2,以及Visual C ++ express 2010和Visual Studio 2010 Service Pack 1。 当我运行npm install -g socket.io时,我遇到了数千行错误。

如下所示,任何人都可以帮助研究和修复此错误?

D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\eng
ine.io-client\node_modules\ws>if not defined npm_config_node_gyp (node "C:\Program Files (x86)\nodej
s\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (r
ebuild)
Building the projects in this solution one at a time. To enable parallel build, please add the "/m"
switch.
  bufferutil.cc
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(213): error C2039: 'ThrowException' : is not
a member of 'v8' [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-clie
nt\node_modules\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(213): error C2039: 'New' : is not a member of
 'v8::String' [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\
node_modules\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]
          C:\Users\czhu\.node-gyp\0.12.2\deps\v8\include\v8.h(1599) : see declaration of 'v8::Strin
  g'
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(213): error C3861: 'ThrowException': identifi
er not found [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\n
ode_modules\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(213): error C3861: 'New': identifier not foun
d [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules
\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(218): error C2039: 'ThrowException' : is not
a member of 'v8' [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-clie
nt\node_modules\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(218): error C3861: 'ThrowException': identifi
er not found [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\n
ode_modules\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]
D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\node_modules\en
gine.io-client\node_modules\ws\node_modules\nan\nan.h(222): error C2039: 'New' : is not a member of
 'v8::String' [D:\GitProjects\almwplus\client\node_modules\socket.io\node_modules\socket.io-client\
node_modules\engine.io-client\node_modules\ws\build\bufferutil.vcxproj]

1 个答案:

答案 0 :(得分:4)

我遇到了同样的问题,它看起来像ws安装的engine.io-client版本的问题。转移到较新版本的ws为我解决了问题。一种方法是从github安装最新(未发布)版本的socket.io

npm install -g automattic/socket.io