npm - 错误:找不到指定的过程

时间:2015-02-10 15:06:25

标签: node.js npm

错误:

module.js:347
        ' for module ' + JSON.stringify(this.id));
                       ^
Error: The specified procedure could not be found.
c:\Users\Artur\workspace\xxx\node_modules\gulp-sass\node_modules\node-sass\vendor\win32-x64\binding.node
    at Error (native)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (c:\Users\Artur\workspace\xxx\node_modules\gulp-sass\node_modules\node-sass\lib\index.js:211:15)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)

系统:

  • 操作系统:Windows 8.1(64位)
  • 节点:v0.12.0
  • npm :2.5.1

背景

昨天我试图开始一个新项目。并试图使用yeoman生成器generator-gulp-angular并得到一堆视觉基本错误。所以我安装了Microsoft Windows SDK和其他一些来自微软的东西。所以现在我在已安装的应用程序列表中有很多Microsoft条目,当我看到这些条目时我迷路了:

These might be relevant for the problem:

Microsoft Visual C++  x64 Libraries
Microsoft Visual C++  x86 Libraries
Microsoft Visual C++ 2005 Redistributable
Microsoft Visual C++ 2005 Redistributable
Microsoft Visual C++ 2005 Redistributable
Microsoft Visual C++ 2005 Redistributable (x64)
Microsoft Visual C++ 2005 Redistributable (x64)
Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.4148
Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.4148
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.4974
Microsoft Visual C++ 2010  x64 Redistributable - 10.0.40219
Microsoft Visual C++ 2010 Express - ENU
Microsoft Visual C++ 2012 x64 Additional Runtime - 11.0.61030
Microsoft Visual C++ 2012 x64 Minimum Runtime - 11.0.61030
Microsoft Visual C++ 2012 x86 Additional Runtime - 11.0.61030
Microsoft Visual C++ 2012 x86 Minimum Runtime - 11.0.61030
Microsoft Visual C++ 2013 32bit Compilers - ENU Resources
Microsoft Visual C++ 2013 Core Libraries
Microsoft Visual C++ 2013 x64 Additional Runtime - 12.0.21005
Microsoft Visual C++ 2013 x64 Debug Runtime - 12.0.21005
Microsoft Visual C++ 2013 x64 Minimum Runtime - 12.0.21005
Microsoft Visual C++ 2013 x86 Additional Runtime - 12.0.21005
Microsoft Visual C++ 2013 x86 Debug Runtime - 12.0.21005
Microsoft Visual C++ 2013 x86 Minimum Runtime - 12.0.21005
Microsoft Visual C++ 2013 x86-x64 Compilers

Microsoft .NET Framework 2.0 SDK (x64) - ENU
Microsoft .NET Framework 4 Multi-Targeting Pack
Microsoft .NET Framework 4.5 Multi-Targeting Pack
Microsoft .NET Framework 4.5 SDK
Microsoft .NET Framework 4.5.1 Multi-Targeting Pack
Microsoft .NET Framework 4.5.1 Multi-Targeting Pack (ENU)
Microsoft .NET Framework 4.5.1 SDK

我不知道我真正需要/不需要什么,或者是否有任何冲突。

昨天我没有得到任何工作,所以我就在那里完成了。

所以今天我发现我有一个旧版本的npm(1.4.28)并将其升级到2.5.1版本。我刚从nodejs.org下载了一个新的x64安装程序。

之后一切都被打破了。我甚至无法再运行gulp serve来启动现有/正在运行的应用程序。几个小时我试图下载/修复/卸载/安装Windows SDKnodejs等。尝试了一些我仍然不完全理解的命令,我仍然迷失了。

我尝试过的很少东西:

  • npm cache clean
  • 删除了node_modules文件夹并运行了npm install
  • 尝试了我在node-gyp
  • 找到的一些命令
  • 尝试将msvs_version属性设置为某些内容
  • 重新开始

错误让我觉得某种编译器出了问题。 但我不知道究竟发生了什么。所以我试图了解问题的原因是什么?我应该尝试下一步来修复错误?

如果需要任何补充信息,请告诉我。

1 个答案:

答案 0 :(得分:9)

编辑(2015年4月2日): 从那时起,Node-sass解决了这个问题。您可以安全地使用Node v0.12,只需确保安装最新版本的Node-sass并更新您的本地AND全局版Gulp(https://github.com/gulpjs/gulp/issues/873)。我将以下原始回复留待归档。


卸载Node v0.12并安装Node v0.10.28

http://nodejs.org/dist/v0.10.28/

您需要.msi安装程序

这解决了我的问题。

显然,node-sass的问题在更新之前不会被修复: https://github.com/sass/node-sass/issues/653