Ошибка узла Невозможно прочитать свойство 'resolv' из неопределенного - PullRequest
6 голосов
/ 11 марта 2019

Я используюactjs и не могу установить какие-либо пакеты, используя npm install. Я получаю сообщение об ошибке:

npm ERR! Cannot read property 'resolve' of undefined

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/stash/.npm/_logs/2019-03-11T10_07_30_264Z-debug.log

Когда я делаю npm install -verbose:

npm info it worked if it ends with ok
npm verb cli [ '/usr/local/bin/node',
npm verb cli   '/usr/local/bin/npm',
npm verb cli   'install',
npm verb cli   '-verbose' ]
npm info using npm@6.7.0
npm info using node@v11.10.1
npm verb npm-session 869376d36eca27b5
npm info lifecycle proj-lite@1.0.0-alpha.6~preinstall: proj-lite@1.0.0-alpha.6
npm timing stage:loadCurrentTree Completed in 22ms
npm timing stage:loadIdealTree:cloneCurrentTree Completed in 1ms
npm timing stage:loadIdealTree:loadShrinkwrap Completed in 1231ms
npm timing stage:rollbackFailedOptional Completed in 1ms
npm timing stage:runTopLevelLifecycles Completed in 2661ms
npm verb stack TypeError: Cannot read property 'resolve' of undefined
npm verb stack     at regFetch (/usr/local/lib/node_modules/npm/node_modules/npm-registry-fetch/index.js:76:23)
npm verb stack     at fetchPackument (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetchers/registry/packument.js:42:10)
npm verb stack     at packument (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetchers/registry/packument.js:20:10)
npm verb stack     at getManifest (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetchers/registry/manifest.js:22:10)
npm verb stack     at manifest (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetchers/registry/manifest.js:13:10)
npm verb stack     at Object.manifest (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetchers/registry/index.js:17:12)
npm verb stack     at Object.Fetcher#manifest [as manifest] (/usr/local/lib/node_modules/npm/node_modules/genfun/lib/genfun.js:15:38)
npm verb stack     at manifest (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetch.js:23:18)
npm verb stack     at pinflight (/usr/local/lib/node_modules/npm/node_modules/pacote/manifest.js:24:12)
npm verb stack     at /usr/local/lib/node_modules/npm/node_modules/promise-inflight/inflight.js:29:24
npm verb stack     at Promise._execute (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/debuggability.js:313:9)
npm verb stack     at Promise._resolveFromExecutor (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:483:18)
npm verb stack     at new Promise (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:79:10)
npm verb stack     at _inflight (/usr/local/lib/node_modules/npm/node_modules/promise-inflight/inflight.js:28:25)
npm verb stack     at /usr/local/lib/node_modules/npm/node_modules/promise-inflight/inflight.js:22:14
npm verb stack     at tryCatcher (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/util.js:16:23)
npm verb cwd /var/www/html/lite-proj/lite-proj
npm verb Linux 4.4.0-142-generic
npm verb argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-verbose"
npm verb node v11.10.1
npm verb npm  v6.7.0
npm ERR! Cannot read property 'resolve' of undefined
npm verb exit [ 1, true ]
npm timing npm Completed in 3862ms

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/stash/.npm/_logs/2019-03-11T10_12_15_921Z-debug.log

Я даже не могу удалить npm и переустановить его, так как я получаю ту же ошибку при попытке удалить. В чем здесь проблема и как ее исправить?

Ответы [ 3 ]

11 голосов
/ 09 июня 2019

Я попал в эту ситуацию со старой версией переключателя версий узла n (~ v2), переключившись на Node v12.Я смог это исправить, переключившись на более старую версию Node, установленную с использованием n, у меня работала v8, а затем обновил переключатель версий до sudo npm install -g n.

Оттуда я могу переключиться на любую версию узла и снова использовать npm.

5 голосов
/ 12 марта 2019

Возможно, причиной ошибки были конфликты глобальных пакетов и версий узлов.Я удалил узел и npm, а затем переустановил их.

Чтобы удалить nodejs и связанные с ними пакеты (например, npm):

sudo apt-get purge --auto-remove nodejs

Nodejs и npm оставят файлы в системе, что может вызвать проблемы при переустановке.Мне также пришлось удалить их.

Хотя удаление пакетов вручную - плохая практика (это может вызвать проблемы с менеджером пакетов), это помогло моему делу. Этот ответ показывает, как вручную удалять nodejs и связанные файлы.

Чтобы переустановить их:

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm
0 голосов
/ 24 июля 2019

Проблема может возникнуть, если вы используете менеджер версий узлов (nvm), попробуйте удалить его, у меня возникла та же проблема, и я удалил nvm и попробовал его.

Работал со всеми версиями узла. (нормально работал с узлами 10.15.3,10.16 и 12.7)

...