Установка npm: Ошибка в сценарии postinstall для node-sass@3.13.1 - PullRequest
0 голосов
/ 29 января 2019

У меня есть угловое приложение: https://github.com/XBITSwitzerland/ngx-admin/tree/ng2-admin

И теперь я пытаюсь сделать: npm install

Но я получаю эту ошибку (Слишком длинный вывод команды слишком длинныйпоэтому я просто делюсь здесь последней частью):

gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\github\ngx-admin\node_modules\node-gyp\lib\build.js:258:23)
gyp ERR! stack     at ChildProcess.emit (events.js:182:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\github\\ngx-admin\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd C:\github\ngx-admin\node_modules\wintersmith-sassy\node_modules\node-sass
gyp ERR! node -v v10.15.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
Build failed with error code: 1
npm WARN ngx-toastr@4.4.1 requires a peer of @angular/core@^2.2.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-toastr@4.4.1 requires a peer of @angular/common@^2.2.0 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\webpack-dev-server\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\watchpack\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-sass@3.13.1 postinstall: `node scripts/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-sass@3.13.1 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\danyb\AppData\Roaming\npm-cache\_logs\2019-01-29T18_25_12_699Z-debug.log

Есть ли у кого-то идея, почему возникает эта ошибка и как ее решить?

Ответы [ 4 ]

0 голосов
/ 14 августа 2019

Выполните следующие команды шаг за шагом

  • Удалите файл package-lock.json
  • npm установите gulp-sass --save-dev
  • npmустановить node-sass @ latest

Если вы не хотите удалять package.json, пожалуйста, запустите npm rebuild node-sass --force

0 голосов
/ 29 января 2019

Если вы столкнулись с этой проблемой, прочитайте эту страницу: https://www.bramvandenbulcke.be/en/kb/failed-node-sass3131-postinstall-script

Решение в моем случае:

1) Удалите файл package-lock.json

2) npm install gulp-sass --save-dev

3) npm install node-sass@latest

Примечания к конкретной версии:

node-sass@3.13.1 работает только в версиях Node.js доv7, как указано в заметках о выпуске :

0 голосов
/ 11 июля 2019

У меня была ошибка node-sass@3.13.1 postinstall: node scripts/build.js при установке npm после этого сообщения

> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v3.13.1/linux-x64-72_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v3.13.1/linux-x64-72_binding.node": 

HTTP error 404 Not Found

Hint: If github.com is not accessible in your location
      try setting a proxy via HTTP_PROXY, e.g. 

      export HTTP_PROXY=http://example.com:1234

or configure npm proxy via

      npm config set proxy http://example.com:8080

> core-js@2.6.9 postinstall /var/www/my/armat/www/node_modules/core-js
> node scripts/postinstall || echo "ignore"

и я потратил часы, чтобы найти решение.Я пытался установить его на laravel 5.2, который использует более старые версии узла и npm, это помогло мне

$ npm install -g n
$ n 6.10.2    // selecting version you need in my case 6.10.2
$ npm install -g npm@3.10.10 // same for npm

надеюсь, что это поможет кому-то еще ^ _ ^

0 голосов
/ 29 января 2019

Я думаю, это происходит потому, что вам не хватает модуля node-sass.Попробуйте следующее и перезапустите сценарий сборки и посмотрите, решит ли это вашу проблему:

npm install node-sass@latest

Кроме того, я вижу, что вы используете fsevents на платформе Windows, просто предупреждая этот модульподдерживается только для собственного доступа к OS X FSEvents

...