НПМ ошибается! возникновения ошибки EPERM код
Я использую узел v6.11.2, НПМ v5.3.0 и угловой/cli v1.2.7.
я внезапно получаю следующее сообщение об ошибке для большинства моих установок npm. Никогда раньше не видел...
mmeppiel@MC-LT-MMEPPIEL MINGW64 ~/Desktop/Angular Solutions/my-app (master)
$ npm install --save bootstrap@4.0.0-alpha.6 font-awesome
npm ERR! path C:UsersmmeppielDesktopAngular Solutionsmy-appnode_modulesfs eventsnode_modules
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall lstat
npm ERR! Error: EPERM: operation not permitted, lstat 'C:UsersmmeppielDesktop Angular Solutionsmy-appnode_modulesfseventsnode_modules'
npm ERR! at Error (native)
npm ERR! { Error: EPERM: operation not permitted, lstat 'C:UsersmmeppielDesk topAngular Solutionsmy-appnode_modulesfseventsnode_modules'
npm ERR! at Error (native)
npm ERR! stack: 'Error: EPERM: operation not permitted, lstat 'C:Usersmme ppielDesktopAngular Solutionsmy-appnode_modulesfseventsnode_modules 'n at Error (native)',
npm ERR! errno: -4048,
npm ERR! code: 'EPERM',
npm ERR! syscall: 'lstat',
npm ERR! path: 'C:UsersmmeppielDesktopAngular Solutionsmy-appnode_ modulesfseventsnode_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR! C:UsersmmeppielAppDataRoamingnpm-cache_logs17-08-08T00_56_ 59_442Z-debug.log
кто-нибудь может объяснить, что здесь происходит? Вещи, которые я пробовал:
- запуск Git Bash в качестве администратора
- Отключение брандмауэра и антивирусной защиты
- запуск кэша npm clean
- вручную удаления конкурс AppDataRoamingnpm-cache
- удаление узла через Панель управления и переустановить
- дал всем полные разрешения на C:Program файлыnodejs
- переустановил CLI
- перезагрузил компьютер (не может повредить?)
- убедитесь, что папка node_modules не только для чтения
ценим Ваше время!
8 ответов
используете ли вы какой-либо частный или корпоративный реестр. проверьте свой .npmrc
файл и убедитесь, что он доступен.
Если вы находитесь в среде компании, убедитесь, что прокси-сервер не является проблемой.
проверьте в папке, если какой-либо пакет блокировки.генерируется json. вы можете удалить, что сделать повторно установить.
У меня мало сомнений, но узел 6.X. x с npm 5.х.X может быть проблема в качестве узла 7.х.X совместима с пахотной 5.X. X. И обычно узел 6.X. x совместим с npm 4.х.х
Я получаю эту ошибку при запуске кода Visual Studio, потому что компилятор typescript наблюдает за файлами и блокирует их (см. https://github.com/Microsoft/vscode/issues/28593). Решение состоит в том, чтобы временно закрыть VS-код при работе с NPM. Может быть, вы что-то просматриваете?
это может помочь https://alastaircrabtree.com/fixing-intermittant-eperm-operation-not-permitted-on-npm-install/
также попробуйте играть с различными node
версии лучший способ обновления / переключения вашего node
в Windows использовать nvm-windows таким образом, вы можете иметь несколько версий узлов, установленных на вашем компьютере dev вы можете переключаться.
обновление 0:
когда вы имеете дело с такими проблемами, вы должны убедиться, что ничто не блокирует наш node_modules
папка, как ваш редактор кода(e.G VS Code, ect) или вы можете работать npm start
в другом окне консоли, и т. д.
обновление 1:
если вы все еще испытываете проблему полностью попробуй удалите оба узла и npm из вашей системы. Затем перезагрузите компьютер и снова установите node и npm.
это швы, как это общая проблема, заглянув в npm проблемы фильтрации по npm ERR! code EPERM
. Если вы просмотрите некоторые из этих проблем, вы увидите, что некоторые люди говорят, что переключение версии узла на самом деле помогает(именно я говорил сначала выше), поэтому вам нужно играть с nvm-windows и посмотреть, какая версия узла работает лучше всего для вас.
после nvm-windows установлен, вы можете сделать:
-
nvm list
- показывает все версии локальных узлов, которые вы можете переключить к -
nvm list available
- показывает все фактические версии узлов что вы можете установить локально -
nvm install <version number>
- установить (скачать+установить) определенную версию узла -
nvm use <version number>
переключиться на определенную версию узла -
nvm help
- вам поможет
если вы переходите от основной версии npm некоторые из ваших пакетов, которые вы установленный с предыдущей версией узла может больше не работать, поэтому вы вынужден быть переустановите их
у меня такая же проблема, даже при использовании Node v8.6.0
и npm v5.4.2
.
решено с помощью:
npm cache clean --force
&
npm install [package] --force
очень похожая проблема, только конкретная жалоба заключалась в том, что scandir терпел неудачу в определенной подпапке (fsevents) в целевом каталоге нового приложения. Я проверил и обнаружил, что папка, о которой идет речь, даже не существует, потому что это продукт необязательной зависимости, которая была пропущена при установке npm, потому что я был в Windows, а не Linux.
скрипт, выполняющий команду сборки приложения, запускается таким образом, чтобы компенсировать это, когда "ng new" запускается под Windows В PowerShell. Он не работает при запуске в обычном окне cmd. Поэтому в моем случае исправление состояло в том, чтобы просто запустить "ng new под Windows PowerShell вместо окна cmd, и установка завершилась успешно-наконец, после того, как попробовали несколько других вещей.
Запустите командную строку windows от имени администратора. Затем перейдите ("CD directoryName") в папку проекта"установка npm".
обычно мы предполагаем, что команда "TNS run android" также настроит Android plateform, которая не удалась для меня два раза, а затем я разрешил ее, выполнив следующие две команды в заданном порядке:
tns platform add android
tns run android
проблема в том, что вы находитесь на неправильной версии узла для вашей операционной системы. Он пытается получить lstat (POSIX syscall), который не существует в Windows.
в настоящее время у меня нет иного решения, кроме install the correct npm
надеюсь, это помогло вам !
https://linux.die.net/man/2/lstat
редактировать Если вы не можете найти исправление, я бы предложил вам перейти на страницу выпуска Github.