Npm-cli.js не найден при запуске npm
Обычно я могу установить библиотеку с помощью npm, но сегодня, когда вы устанавливаете yoman, я столкнулся с этими ошибками. Пожалуйста, помогите выяснить причину.
D:\Works\phonegap\ionic\todo>npm install -g yo
module.js:340
throw err;
^
Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\node_modules\npm\bin\npm-cli.js'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:906:3
Я заглянул в папку:
C:\Program Files\nodejs\ node_modules\npm\bin\
но не видите папку node_modules в качестве описанной ошибки.
Я также пытаюсь найти npm-cli.js и увидеть его на самом деле в C:\Program Files\nodejs\node_modules\npm\bin\
Ответы
Ответ 1
Оказывается, проблема связана с неправильным путем узла в системной переменной. Путь в настоящее время указывает на
(Я действительно не знаю, когда я изменил это)
C:\Program Files\nodejs\node_modules\npm\bin
поэтому я перехожу на
C:\Program Files\nodejs
и это работает как шарм.
Ответ 2
Вам нужно запустить это в командной строке.
SET PATH=C:\Program Files\Nodejs;%PATH%
Ответ 3
У вас может также возникнуть проблема, если на вашем пути у вас есть C:\Program Files\nodejs
и C:\Program Files\nodejs\node_modules\npm\bin
. Удалите последнее из пути
Ответ 4
Скопируйте каталог с именем npm
из пути к установленному узлу (в моем случае каталог npm был доступен в C:\Program Files\nodejs\node_modules
).
Перейдите в C:\Users\%USERNAME%\AppData\Roaming\npm\node_modules
и вставьте туда скопированный каталог npm
.
Этот метод работал для меня, когда у меня была такая же ошибка. , ,
Ответ 5
Это не тот же случай, что и в вопросе, но может быть полезен для кого-то, кто сталкивается с подобной проблемой. В Windows, если вы вызываете команды npm
из некоторого инструмента CI/automation, вы можете столкнуться с ошибкой:
Error: Cannot find module 'SOME_PATH\node_modules\npm\bin\npm-cli.js'
где SOME_PATH
не Program Files/...
, а какая-то директория проекта. Поэтому npm пытается найти npm-cli.js внутри корневого каталога проекта, а не искать его в Program Files/nodejs
.
Причина: npm.cmd script:
:: Created by npm, please don't edit manually.
@ECHO OFF
SETLOCAL
SET "NODE_EXE=%~dp0\node.exe"
IF NOT EXIST "%NODE_EXE%" (
SET "NODE_EXE=node"
)
SET "NPM_CLI_JS=%~dp0\node_modules\npm\bin\npm-cli.js"
FOR /F "delims=" %%F IN ('CALL "%NODE_EXE%" "%NPM_CLI_JS%" prefix -g') DO (
SET "NPM_PREFIX_NPM_CLI_JS=%%F\node_modules\npm\bin\npm-cli.js"
)
IF EXIST "%NPM_PREFIX_NPM_CLI_JS%" (
SET "NPM_CLI_JS=%NPM_PREFIX_NPM_CLI_JS%"
)
"%NODE_EXE%" "%NPM_CLI_JS%" %*
Этот script использует %~dp0
для поиска npm-cli.js, но некоторые средства автоматизации могут устанавливать рабочий каталог таким образом, что %~dp0
указывает на локальный проект dir, поэтому script работает некорректно.
Одним из возможных решений может быть изменение вызовов npm из этого
npm.cmd install
к этому
cmd.exe /c npm.cmd install
Ответ 6
Я только что отремонтировал мою установку NodeJS, и это сработало для меня!
Перейдите в Control Panel\All Control Panel Items\Programs and Features
→ найдите NodeJS
и выберите вариант восстановления, чтобы восстановить его. Надеюсь это поможет.
Ответ 7
Ни один из других ответов не работал у меня.
Вот что я пишу (в оболочке git bash на окнах):
PATH="/c/Program Files/nodejs/:$PATH" npm run yeoman
Ответ 8
На Mac:
Я запускал это из Maven com.github.eirslett Frontend Plugin, когда у меня была такая же ошибка.
В конце концов мне пришлось:
Установите Node.js через установщик, загрузите здесь: http://nodejs.org/
Удалите все node/
и node_modules/
папок из моей структуры сборки maven.
Ответ 9
Не изменяйте переменные среды
Именно этот установщик вызвал проблему и не установил весь необходимый файл.
Я только что отремонтировал установку NODEJS в Windows 7, и она работает очень хорошо. Может быть, вы можете переустановить, просто что-то не работает.
Ответ 10
Я столкнулся с той же проблемой с узлом 8.5 при установке с nvm. Нижеследующее решение сработало для меня
$ nvm uninstall 8.5
8.5.0
Uninstalling node v8.5.0...Error removing node v8.5.0
Manually remove C:\Users\Omkar\AppData\Roaming\nvm\v8.5.0.
$ nvm install 8.5
8.5.0
Downloading node.js version 8.5.0 (64-bit)...
Complete
Creating C:\Users\Omkar\AppData\Roaming\nvm\temp
Downloading npm version 5.3.0... Complete
Installing npm v5.3.0...
Installation complete. If you want to use this version, type
nvm use 8.5.0
[email protected] MINGW64 /d/code
Это сработало для меня, потому что узел 8.5 был неправильно установлен до nvm. Я понял, что папки "npm\bin\npm-cli.js" ранее не были созданы внутри node_modules.
Ответ 11
Это началось для меня после того, как я установил GoogleChrome/puppeteer, решением было переустановить npm:
$ npm i [email protected]
или же
$ npm install [email protected]
Ответ 12
В дополнение к выше я также должен был удалить C:\Users\%USERNAME%\AppData\Roaming\npm
.
Это помогло.
Ответ 13
Фактически есть 2 пути, которые были добавлены в вашу Системную переменную при обновлении до последней версии nodejs.
1. C:\Program Files\nodejs
2. C:\Program Files\nodejs\node_modules\npm\bin
Для пользователей Windows 7/8/8.1 они не будут иметь переменные среды Windows 10 smart GUI.
В любом случае, все, что вам нужно сделать, это найти "C:\Program Files\nodejs\node_modules\npm\bin"
и удалить его.
Кроме того, удалите "C:\Users\%USERNAME%\AppData\Roaming\npm"
из переменных среды. Я отправляю этот ответ, потому что потратил 10 часов на поиски решения в Интернете. Объединив вышеупомянутый ответ, я, наконец, преодолею проблему.
Ответ 14
просто запустите эту команду:
npm i [email protected] -g
Ответ 15
У меня была такая же проблема на окнах. Я только что восстановил Node, и он работал нормально после перезапуска команды на Windows.
Ответ 16
npm install -g npm @[версия] исправила проблему
Ответ 17
Решение для меня в VS2017 (в разделе "Инструменты | Параметры..." )
![В разделе Инструменты | Параметры...]()
Я изменил путь к: C:\Program Files\nodejs
Ответ 18
Я столкнулся с этой проблемой при установке node9.0.0 на windows7
в конце решение было просто удалить
НПМ
npm.cmd
NPX
npx.cmd
из
C:\Program Files\nodejs\node_modules\npm\bin
перед этим обходным путем было выполнение
C:\Program Files\nodejs\npm
так что это один из способов увидеть, есть ли у вас такая же проблема.
Ответ 19
создайте папку npm вручную внутри node_modules и запустите программу установки с параметрами восстановления. Он копирует недостающие файлы.
Ответ 20
Ни одно из решений здесь не работало для меня, но после того, как я перезапустил свою систему и снова npm install
, она сработала. Я бы догадался, что один или несколько процессов, которыми я бежал, прежде чем приступать к нему.
Простой перезапуск ПК в Windows 10 сделал для меня волшебство!
Ответ 21
В моем случае я использовал nvm-windows 1.1.6, и я обновил версию nodejs, используя nvm install latest
, который в конце концов сказал мне, что nodejs и npm установлены, однако, когда я пытался сделать npm install
, я получил
Ошибка: не удается найти модуль 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
после проверки структуры nvm-windows я обнаружил, что C:\Program Files\nodejs
был символически связан с %APPDATA%\nvm\NODE_VERSION
, (NODE_VERSION был v9.7.1 в моем случае), у которого есть папка node_modules
, не имеющая ничего внутри, вызвала эту ошибку, Решение состояло в том, чтобы скопировать папку npm
из одной из моих прежних версий " node_modules
" и вставить ее. Затем я обновил npm с помощью npm install [email protected] -g
и все снова заработало.
Ответ 22
Для меня ничего из вышеперечисленного не было, я только заметил, что каждый раз, когда я делаю "npm install...", любая команда npm просто перестает работать. Поэтому каждую установку я делаю, я должен запустить программу установки NodeJS и выбрать "repair". Пока я не найду реальное решение :)
Ответ 23
Обновление NPM до последней версии работало для меня:
npm install [email protected] -g
Ответ 24
для парней, которые все еще ходят вокруг этой темы...
- установить узел с официального сайта (проверьте npm и версию узла, чтобы проверить
правильно ли установлено, да в новом терминале /cmd),
- установите nvm сейчас и когда появится запрос на управление текущим узлом с помощью nvm, нажмите да.
- откройте новый cmd и запустите nvm.
Готово. Простой способ.
Ответ 25
Изменить переменную пути среды
C:\Program Files\nodejs\node_modules\npm\bin
и откройте командный терминал и npm -v и
Ответ 26
В Windows 10:
- Нажмите клавишу Windows, введите изменить системные переменные среды и введите.
- Нажмите переменные среды...
- В нижней половине окна, которое открылось с заголовком Переменные среды, вы увидите таблицу с названием Системные переменные с двумя столбцами, первый из которых называется переменной.
- Найдите строку с переменной Path и щелкните по ней.
- Нажмите edit, чтобы открыть окно с названием Edit evironment variable.
- Здесь, если вы найдете
C:\Program Files\nodejs\node_modules\npm\bin
выберите его и нажмите кнопку редактирования справа от вас, затем отредактируйте поле, указав путь к папке, в которой находится папка nodejs, в моем случае она просто сокращалась до:
C:\Program Files\nodejs
Затем я закрыл все свои терминалы cmd или powershell, открыл их снова и npm работал.