为什么npm install失败并显示与node-sass相关的错误? [英] Why is npm install failing with node-sass related errors?
问题描述
我正在使用继承的Rails应用程序.我正在尝试运行 npm install
命令,但始终出现下面的错误.我尝试按照输出中的建议运行 npm rebuild node-sass
,但这没有帮助.我在 Ubuntu 16 和 OS X 上遇到此问题.
I'm working with a rails application I inherited. I'm trying to run the npm install
command but I keep getting the errors below. I tried running npm rebuild node-sass
as suggested in the output but it did not help. I'm having this problem on Ubuntu 16 as well as OS X.
> cd client && npm install
npm WARN deprecated gulp-jscs@3.0.2: JSCS is deprecated. Switch to ESLint.
npm WARN deprecated why-did-you-update@0.0.8: Package no longer supported. Please use @welldone-software/why-did-you-render instead.
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated jscs-preset-wikimedia@1.0.1: No longer maintained. We recomment migrating to ESLint with eslint-config-wikimedia.
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated core-js@1.2.7: core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.
npm WARN deprecated nomnom@1.8.1: Package no longer supported. Contact support@npmjs.com for more info.
> railsapp@1.0.0 postinstall /Users/antarr/code/railsapp/client
> npm run build
> railsapp@1.0.0 build /Users/antarr/code/railsapp/client
> NODE_ENV=production webpack -p && NODE_ENV=production gulp build
Hash: b24f8ebb1737ed4fc3f1
Version: webpack 1.15.0
Time: 39385ms
Asset Size Chunks Chunk Names
client.bundle.js 949 kB 0 [emitted] client
tools.bundle.js 903 kB 1 [emitted] tools
client.bundle.js.map 6.62 MB 0 [emitted] client
tools.bundle.js.map 6.29 MB 1 [emitted] tools
+ 913 hidden modules
/Users/antarr/code/railsapp/client/node_modules/node-sass/lib/binding.js:15
throw new Error(errors.missingBinary());
^
Error: Missing binding /Users/antarr/code/railsapp/client/node_modules/node-sass/vendor/darwin-x64-48/binding.node
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 6.x
Found bindings for the following environments:
- OS X 64-bit with Unsupported runtime (83)
This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
at module.exports (/Users/antarr/code/railsapp/client/node_modules/node-sass/lib/binding.js:15:13)
at Object.<anonymous> (/Users/antarr/code/railsapp/client/node_modules/node-sass/lib/index.js:14:35)
at Module._compile (module.js:556:32)
at Object.Module._extensions..js (module.js:565:10)
at Module.load (module.js:473:32)
at tryModuleLoad (module.js:432:12)
at Function.Module._load (module.js:424:3)
at Module.require (module.js:483:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/Users/antarr/code/railsapp/client/node_modules/gulp-sass/index.js:187:21)
npm ERR! Darwin 19.4.0
npm ERR! argv "/Users/antarr/.nvm/versions/node/v6.6.0/bin/node" "/Users/antarr/.nvm/versions/node/v6.6.0/bin/npm" "run" "build"
npm ERR! node v6.6.0
npm ERR! npm v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! railsapp@1.0.0 build: `NODE_ENV=production webpack -p && NODE_ENV=production gulp build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the railsapp@1.0.0 build script 'NODE_ENV=production webpack -p && NODE_ENV=production gulp build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the railsapp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! NODE_ENV=production webpack -p && NODE_ENV=production gulp build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs railsapp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls railsapp
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/antarr/code/railsapp/client/npm-debug.log
npm ERR! Darwin 19.4.0
npm ERR! argv "/Users/antarr/.nvm/versions/node/v6.6.0/bin/node" "/Users/antarr/.nvm/versions/node/v6.6.0/bin/npm" "install"
npm ERR! node v6.6.0
npm ERR! npm v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! railsapp@1.0.0 postinstall: `npm run build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the railsapp@1.0.0 postinstall script 'npm run build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the railsapp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! npm run build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs railsapp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls railsapp
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/antarr/code/railsapp/client/npm-debug.log
npm ERR! Darwin 19.4.0
npm ERR! argv "/Users/antarr/.nvm/versions/node/v6.6.0/bin/node" "/Users/antarr/.nvm/versions/node/v6.6.0/bin/npm" "install"
npm ERR! node v6.6.0
npm ERR! npm v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! railsapp@1.0.0 postinstall: `cd client && npm install`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the railsapp@1.0.0 postinstall script 'cd client && npm install'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the railsapp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! cd client && npm install
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs railsapp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls railsapp
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/antarr/code/railsapp/npm-debug.log
package.json:
{
"name": "railsapp",
"version": "1.0.0",
"description": "...",
"private": true,
"engines": {
"node": "6.6.0",
"npm": "3.10.7"
},
"main": "server.js",
"repository": {
"type": "git",
"url": ""
},
"scripts": {
"postinstall": "cd client && npm install",
"build": "cd client && npm run build",
"build:dev": "cd client && npm run build:dev",
"watch": "cd client && npm run watch",
"gulp": "cd client && gulp default --color",
"gulp:hot": "cd client && gulp hot --color",
"gulp:express": "cd client && gulp express --color",
"gulp:live": "cd client && gulp live --color",
"start": "cd client && npm start",
"lint": "cd client && npm run lint",
"test": "bundle exec rake test && (cd client && npm run lint)",
"express": "echo 'visit http://localhost:4000' && (cd client && npm start)",
"rails": "(cd client && npm run build:dev) && rails s"
},
"author": "Mike R <mike@railsapp.com>",
"bugs": {
"url": ""
},
"homepage": "https://www.railsapp.com",
"dependencies": {
"postcss": "^7.0.30",
"postcss-cssnext": "^3.1.0"
}
}
添加节点无效后发生错误:
Error after adding node-sass:
+ 838 hidden modules
gulp[7747]: ../src/node_contextify.cc:658:static void node::contextify::ContextifyScript::New(const v8::FunctionCallbackInfo<v8::Value>&): Assertion `args[1]->IsString()' failed.
1: 0xa0e670 node::Abort() [gulp]
2: 0xa0e6ee [gulp]
3: 0xa006df node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [gulp]
4: 0xbf1fc1 [gulp]
5: 0xbf2b52 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [gulp]
6: 0x13da5f9 [gulp]
Aborted (core dumped)
推荐答案
您可以使用以下版本:
节点:12, NPM :6,节点无效:4.12 +
Node: 12, NPM: 6 and node-sass: 4.12+
To fix this error, you need to fix your node and node-sass versions as per this version compatibity list. From this list, you need minimum Node 8 if you are using node-sass 4.5.3+.
我建议您将 nodejs 和 npm 升级到最新的LTS节点 12.16.3 (包括npm 6.14.4)),然后使用 node-sass
版本 4.12 +
.此处是如何升级 node&npm .
I would recommend you to upgrade your nodejs and npm to latest LTS Node 12.16.3 (includes npm 6.14.4), and after that to go with node-sass
version 4.12+
. Here is how to upgrade node & npm.
要更改 node-sass
版本,请在package.json中写入:"node-sass":"^ 4.12.0",
.
To change node-sass
version, write this in your package.json: "node-sass": "^4.12.0",
.
这篇关于为什么npm install失败并显示与node-sass相关的错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!