Если это вопрос о том, как использовать NVM4W, используйте вместо этого stackoverflow .
Если это проблема с антивирусом, обязательно сначала найдите существующие проблемы.
[] Windows Server 2016
[] Моя установка Windows не на английском языке.
Верните правильный номер версии.
module.js: 491
бросить ошибку;
^
Ошибка: не удается найти модуль semver
в Function.Module._resolveFilename (module.js: 489: 15)
в Function.Module._load (module.js: 439: 25)
в Module.require (module.js: 517: 17)
при требовании (internal / module.js: 11:18)
на объекте.
в Module._compile (module.js: 573: 30)
в Object.Module._extensions..js (module.js: 584: 10)
в Module.load (module.js: 507: 32)
в tryModuleLoad (module.js: 470: 12)
в Function.Module._load (module.js: 462: 3)
module.js: 491
бросить ошибку;
^
Ошибка: не удается найти модуль semver
в Function.Module._resolveFilename (module.js: 489: 15)
в Function.Module._load (module.js: 439: 25)
в Module.require (module.js: 517: 17)
при требовании (internal / module.js: 11:18)
на объекте.
в Module._compile (module.js: 573: 30)
в Object.Module._extensions..js (module.js: 584: 10)
в Module.load (module.js: 507: 32)
в tryModuleLoad (module.js: 470: 12)
в Function.Module._load (module.js: 462: 3)
nvm установить 8.4.0
nvm использовать 8.4.0
npm -v
Это ошибка npm, а не полностью ошибка NVM. Я бы посоветовал переустановить узел 8.4.0 .... возможно, загрузка npm была плохой или что-то было повреждено.
@coreybutler Это не сработает, продолжает терпеть неудачу даже при деактивации, удалении, ручном удалении папки, переустановке и повторной активации. Та же ошибка.
Я даже скопировал зависимости npm node_modules из другой работающей нормальной установки node 8.5.0 и все еще имел проблемы. Не могли бы вы подробнее изучить это и увидеть, в чем проблема?
Nvm - действительно удобный инструмент, но он больше не работает, а жаль :(
Не знаю, что вам сказать .... Я могу установить semver
с той же настройкой.
@coreybutler только что открыл новый выпуск с подробностями
Моя собственная среда и шаги, которые я использовал для воспроизведения проблемы здесь (закрытый дубликат): # 305
То же самое с последней версией 8.8.1.
Не уверен, как исправить это с помощью NVM, поскольку SO предлагает просто переустановить узел. Учитывая характер установки nvm, не уверен, как воспроизвести эти шаги. Значит, единственный способ использовать узел v8 - просто не использовать NVM?
https://stackoverflow.com/questions/33870520/npm-install-cannot-find-module-semver
nvm install 8.8.1
(или другая версия по вашему желанию). Не переключайтесь на это (пока).%APPDATA%/nvm/v8.8.1/npm
за npm
папки из скачанного архиваnvm use 8.8.1
спасибо @ roman-spiridonov только что столкнулся с той же ошибкой на узле 8.8.1, установленном через nvm в Windows, и ваш обходной путь, похоже, выполняет свою работу
Кажется, также работал с последней версией узла (9.1.0).
кажется, что npm, установленный из npm, не совместим с самим узлом, вы должны загрузить zip и заменить модуль npm, например, @ roman-spiridonov
@coreybutler, разве это не будет решаться? Я вижу точно такую же ошибку - все, что выше = <8.0.
К сожалению, я не могу запустить npm i semver
Я получаю ту же ошибку.
@ roman-spiridonov Я считаю, что "npm" - это не папка, а файл в загруженном .zip. Замена его загруженным, похоже, не решает для меня проблемы с семвером (я знаю, что другие добились успеха)
У меня та же проблема.
Для меня работает обходной путь @roman-spiridonov.
node 8.9.1
npm 5.5.1
@hyndsite вам нужно заглянуть в каталог node_modules - внутри это каталог npm . Используйте это, и это должно сработать.
Спасибо @powellian. Я обнаружил, что вчера и собирался опубликовать новое обновление в сообщении @ roman-spiridonov - что правильный путь - %APPDATA%/nvm/v8.8.1/node_modules/npm
Запутать дело помог файл "npm" в пути /nvm/vx.xx.
Спасибо, это работает, но теперь мне интересно, почему пакет, который загружает nvm, и тот, который мы загружаем, отличается?
Та же проблема с 8.9.0 и обходным путем @roman-spiridonov спасла положение.
Как и @benavern, мне любопытно, почему пакет, который устанавливает nvm, отличается от пакета в официальном репозитории.
То же самое в последней версии 8.9.4.
Ошибка была устранена путем удаления каталога «C: \ Users \ yourname \ AppData \ Roamingnvm \ v *» и повторного выполнения «nvm install».
Если вы столкнулись с этой проблемой и используете Windows 10, включите длинные пути с помощью редактора реестра или редактора локальной групповой политики.
Ссылка: https://github.com/coreybutler/nvm-windows/issues/305#issuecomment -345024594
Ссылка: https://superuser.com/a/1119948
Но мне все еще нужно было найти обходной путь @ roman-spiridonov. Однако мне не удалось скопировать папку npm в проводнике, вместо этого мне нужно было использовать robocopy:
robocopy "C:\Users\username\Downloads\node-v8.9.4-win-x64\node_modules\npm" "C:\Users\username\AppData\Roaming\nvm\v8.9.4\node_modules\npm" /mir
альтернатива перемещению nvm root. выполните nvm root C:\nvm
перед установкой нового узла.
может также потребоваться скопировать дополнительные файлы в новый корень.
если уже установлено, то:
nvm uninstall 8.x.x
nvm root C:\nvm
copy /Y %APPDATA%\nvm\* C:\nvm
nvm install 8.x.x
У меня возникла та же проблема (ошибка: не удается найти модуль semver).
Несколько советов, которые помогут вам начать работу:
Сравнение файлов (с использованием официального zip-файла) показало, что действительно имеется> 4k файлов и папок, отсутствующих в node_modules\npm
. Похоже, распаковка прервана. Проверено на v8.9.1 и v8.9.4: все node_modules в алфавитном порядке после libnpx
отсутствуют. Не удивлюсь, если это относится к этой смехотворно вложенной структуре папок: ...\nvm\v8.9.4\node_modules\npm\node_modules\libnpx\node_modules\yargs\node_modules\read-pkg-up\node_modules\read-pkg\node_modules\load-json-file\node_modules\parse-json\node_modules\error-ex\node_modules\is-arrayish\
Я взял текущий мастер nvm-windows, добавил некоторую отладочную информацию в функцию установки в nvm.go
, скомпилировал его (с Go 1.10 win x64) и заменил nvm.exe на новый. Результат:
А теперь самое удивительное, когда я пытался найти регрессию:
Мне кажется, что есть проблема с процессом сборки и / или средой.
Было бы здорово, если бы кто-то другой мог попробовать, если воссоздание nvm.exe через build.bat или go build src/nvm.go
решит проблему и для него / нее.
HTH, кодовая оболочка
Удалите папку npm из папки ниже
C: \ Usersusername \ AppData \ Roamingnpm
после => установка npm
У меня все работает нормально! ....
Просто столкнулся с этой проблемой сегодня, и это сработало для меня.
1) Откройте терминал bash
2) компакт-диск в C: \ Usersusername \ AppData \ Roamingnpm \ node_modules \
3) должен увидеть package.json
4) установка пряжи
@codeshell Спасибо за ваш анализ. Я обнаружил, что проблема связана с длинными путями, которые не поддерживаются в Windows. Для меня даже после загрузки zip-файла npm и замены содержимого C: \ Users \ yourname \ AppData \ Roamingnvm \ 9.11.1npm я получил ошибку. На самом деле я не мог скопировать все файлы из загруженного zip-файла npm из-за длинных имен.
Чтобы избежать этого, я удалил версию узла 9.11.1, а затем удалил nvm. Переустановил nvm на C: nvm. Теперь моя обычная «nvm install 9.11.1» работает нормально, и «npm» также находится в хорошем состоянии, что подтверждается запуском «npm -v».
Я знаю, что это довольно радикальное решение, но его нужно сделать только один раз.
Я выполнил эти шаги, и моя проблема была решена.
установка узла через nvm 1.6.0 у меня работала
В моем случае пути были слишком длинными. Я выбрал c: nvm в качестве диспетчера версий каталога установки и c: \ nodejs для каталога символических ссылок. Похоже, это решило проблему для меня.
У меня была такая же проблема с узлом v10.4.0, и у меня сработал обходной путь от романов-спиридонов.
Я уже удалил %AppData%\npm
и т.д. перед установкой nvm-windows.
Пытался запустить 10.4.1, сначала были проблемы.
Он заработал после удаления папки из места установки вручную и повторной установки через nvm
. Не уверен, что это слишком длинный путь (очевидно, нет) C:\Users\muser\AppData\Roaming\nvm\v10.4.1
.
Та же проблема с v10.5.0 и решением roman-spiridonovs у меня тоже работала.
У меня такая же проблема при установке последней версии узла v10.6.0, затем я просто удалил его и переключился на v8.11.3, проблема решена.
Я также пробовал скачать напрямую npm-v6.1.0.zip, при разархивировании у него есть ошибки.
Возникла та же проблема, что и у
проблема сохраняется с 10.6.0-64bit для полной чистой первой установки. (до этого не было узла / npm). Решение roman-spiridonovs продолжает работать (для меня папку npm теперь можно найти в [...node]\node_modules\npm
)
Почему это все еще проблема спустя почти год?
Только что столкнулся с этой проблемой в Windows 10.
Включение длинных путей Win32 устранило проблему. См. Сообщение от @apptaro (2018-02-15)
После включения длинных путей я перезагрузил Windows, чтобы изменения вступили в силу.
Мне также пришлось вручную удалить неработающую установку npm
.
После этого я мог снова установить npm
используя nvm
.
Я считаю, что nvm
под Windows должен выдавать предупреждения, если длинные пути не включены. nvm install
также не должен терпеть неудачу.
Для меня:
Это сценарий PowerShell, который мы используем для начинающих. Надеюсь, после перезагрузки они смогут обновиться до более поздней версии.
# Get Chocolatey which is required for the rest of this script
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco feature enable -n=allowGlobalConfirmation
choco upgrade chocolatey
choco upgrade nvm
$env:NVM_HOME = [System.Environment]::ExpandEnvironmentVariables([System.Environment]::GetEnvironmentVariable("NVM_HOME","Machine"))
$env:NVM_SYMLINK = [System.Environment]::ExpandEnvironmentVariables([System.Environment]::GetEnvironmentVariable("NVM_SYMLINK","Machine"))
$env:Path = [System.Environment]::ExpandEnvironmentVariables([System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User"))
# Enable long paths in windows - may avoid npm issue https://github.com/coreybutler/nvm-windows/issues/302
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1 -PropertyType DWORD -Force | Out-Null
New-ItemProperty -Path 'HKLM:\SYSTEM\ControlSet001\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1 -PropertyType DWORD -Force | Out-Null
nvm install 9.11.2
nvm use 9.11.2
Не знаю, что вам сказать .... Я могу установить
semver
с той же настройкой.
Я думаю, что запуск "npm install" решит проблему, как и со мной;)
Я считаю, что @momochanmo только что забыл установить пакет semver в свой проект. То же сообщение об ошибке, но это совершенно другая проблема.
Напомним: этот поток посвящен тому факту, что nvm устанавливает поврежденную версию npm с отсутствующей / поврежденной версией пакета semver, что делает его неработоспособным.
Наиболее вероятная основная причина, предложенная до сих пор, заключается в том, что ошибка / изменение поведения, внесенная в компилятор Go около 3 лет назад, вызывает ошибку, которая незаметно проглатывается во время установки. См. Https://github.com/coreybutler/nvm-windows/pull/370.
Так что, если вы знаете кого-то, кто работает с Windows и увлечен Go, сейчас самое время похлопать его по плечу и предложить отличную возможность карьерного роста 😅
Я выполнил эти шаги, и моя проблема была решена.
- удалить Node.js
- Удалите содержимое следующих папок
C: \ Пользователи\ AppData \ Roamingnpm-cache
C: \ Пользователи\ AppData \ Roamingnpm
C: \ Program Files \ nodejs- Затем снова установите Node _ https://nodejs.org/en/_
После этого у меня сработало. Вы спасатель !!!!! спасибо <3
Самый полезный комментарий
То же самое с последней версией 8.8.1.
Не уверен, как исправить это с помощью NVM, поскольку SO предлагает просто переустановить узел. Учитывая характер установки nvm, не уверен, как воспроизвести эти шаги. Значит, единственный способ использовать узел v8 - просто не использовать NVM?
https://stackoverflow.com/questions/33870520/npm-install-cannot-find-module-semver
Обходной путь
nvm install 8.8.1
(или другая версия по вашему желанию). Не переключайтесь на это (пока).%APPDATA%/nvm/v8.8.1/npm
заnpm
папки из скачанного архиваnvm use 8.8.1