npm install失败,提示“没有名为isNearDeath的成员”

时间:2019-07-30 12:10:01

标签: node.js npm

我不得不说我对npm或nvm的了解非常有限。

我当前克隆了一个需要运行的项目。

命名npm install并运行良好,能够与npm run一起运行

那是一周前。今天,我想再次运行它,并开始看到多个奇怪的错误。

喜欢:

Module build failed: Error: Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime (59)

它似乎很受欢迎,非常受欢迎,有多个可能的答案。

这有点“可行”的解决方案,我删除了软件包,然后安装了较新的版本。从这里(https://dev.to/letsbsocial1/node-sass-and-node-910-4ol处获取(加上我删除了bower_components和node_modules文件夹)

无论如何,npm install命令仍然失败,这是由于出现一个奇怪的错误。

                      ^
14 warnings and 9 errors generated.
make: *** [Release/obj.target/binding/src/binding.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at ChildProcess.emit (events.js:203:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Darwin 18.6.0

在此之前,我可以看到类似这样的内容:

In file included from ../src/binding.cpp:1:
In file included from ../../nan/nan.h:2222:
../../nan/nan_object_wrap.h:124:26: error: no member named 'IsNearDeath' in 'Nan::Persistent<v8::Object, v8::NonCopyablePersistentTraits<v8::Object> >'
    assert(wrap->handle_.IsNearDeath());

来自Java世界,这些错误毫无意义,我无法弄清楚到底是怎么回事。

你们中的任何一个都知道我可以做些什么来使它运行吗?

我在跑步

npm 6.9.0
node v12.6.0

2 个答案:

答案 0 :(得分:4)

node-sass是一个“本机”模块(即,其中的某些部分是以编译为机器代码的语言(在本例中为C ++)实现的。这意味着它利用了Node的本机API,这些API可能会因版本而异。因此,本机模块通常仅适用于某些版本的Node,并且在Node版本更改时需要更新。

node-sass也不例外,他们的自述文件指出,如果您想使用Node v12,则必须使用node-sass v4.12.0或更高版本。

答案 1 :(得分:1)

我遇到了类似的问题,这可能是由于节点升级造成的:实际上,我能够通过将版本从12降级到10来解决该问题,如this thread中所述。