Ошибка npm install bcrypt с ошибкой: не удается найти модуль ‘nan’

Я пытаюсь заставить мой существующий проект Angular работать на новом ноутбуке, и его запуск и запуск сводят меня с ума. Вот что я сделал:

git init 
git clone <project>
cd <project directory>
delete package-lock.json
npm install
npm install --global --production windows-build-tools
npm install bcrypt

Предпоследним шагом является установка зависимостей bcrypt через https://github.com/kelektiv/node.bcrypt.js/wiki/Installation-Instructions (поймал меня ранее). Но что бы я ни пытался, я получаю ошибку, указанную в конце этого поста.

Я проверил папку node_modules, и зависимость «nan» действительно существует. несмотря на это, я попытался установить его снова (как локально, так и глобально из-за ошибка узла не может найти модуль уже установлен), и он устанавливается нормально. ‘nan’ также указан в файле package.json.

Я пробовал:
* Это: Ошибка: не удается найти модуль ‘nan’
* Удаление узла следующим образом: Как полностью удалить node.js из Windows, а также удалив все установки Python, которые я смог найти на компьютере (включая установку версии 3, которая, как мне казалось, могла конфликтовать, но, похоже, проблема была не в этом).
* Кроме этого google не работает.
* Перерыв и ожидание божественного вдохновения тоже не сработали.

Вот ошибка:

node-pre-gyp WARN Using request for node-pre-gyp https download
node-pre-gyp WARN Tried to download(404): https://github.com/kelektiv/node.bcrypt.js/releases/download/v3.0.3/bcrypt_lib-v3.0.3-node-v64-win32-x64-unknown.tar.gz
node-pre-gyp WARN Pre-built binaries not found for [email protected] and [email protected] (node-v64 ABI, unknown) (falling back to source compile with node-gyp)
internal/modules/cjs/loader.js:583
    throw err;
    ^

Error: Cannot find module 'nan'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
    at Function.Module._load (internal/modules/cjs/loader.js:507:25)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at [eval]:1:1
    at Script.runInThisContext (vm.js:96:20)
    at Object.runInThisContext (vm.js:303:38)
    at Object.<anonymous> ([eval]-wrapper:6:22)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at evalScript (internal/bootstrap/node.js:587:27)
gyp: Call to 'node -e "require('nan')"' returned exit status 1 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:345:16)
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:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "--fallback-to-build" "--module=C:\\project\\node_modules\\bcrypt\\lib\\binding\\bcrypt_lib.node" "--module_name=bcrypt_lib" "--module_path=C:\\project\\node_modules\\bcrypt\\lib\\binding" "--napi_version=3" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v64" "--python=C:\\Users\\xxxxx\\.windows-build-tools\\python27\\python.exe"

РЕДАКТИРОВАТЬ 1

Пакет nan по умолчанию установлен. Когда я запускаю npm list nan, я получаю:

[email protected] C:\project
+-- @angular-devkit/[email protected]
| `-- [email protected]
|   `-- [email protected]  deduped
+-- @angular/[email protected]
| `-- [email protected]
|   `-- UNMET OPTIONAL DEPENDENCY [email protected]
|     `-- [email protected]  deduped
`-- [email protected]

Я также попробовал это и добавил переменные среды, но безуспешно.

См. также:  Необходимо загрузить изображение на сервер AWS S3 с помощью fastify-multer с получением ошибки [Function: multerPreHandler]
Понравилась статья? Поделиться с друзьями:
IT Шеф
Комментарии: 2
  1. Kissenger

    Попробуйте вручную установить nan в правильный подкаталог, т.е.

    cd $(npm root -g)/npm && npm install nan
    

    Спасибо, но не повезло. Комментарий, который вы мне дали, не удался (система не может найти указанный путь.), но я нашел глобальную папку npm (в C:\Users\xxxxx\AppData\Roaming\npm\node_modules для меня) и установил прямо туда. Визуально проверил, что папка nan существует, и повторил попытку установки bcrypt. Без изменений, та же ошибка. person Kissenger; 18.01.2019

  2. Kissenger

    Единственный способ решить эту проблему — сбросить окна (10) и начать заново. Новый ноутбук, так что не слишком больно. Все-таки было бы лучше выяснить, что не так, и исправить это…

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: