Почему `npx npm --version` использует другую версию, чем` npm --version`? - PullRequest
0 голосов
/ 03 августа 2020

Используя nvm и узел 12.16.3, я пытаюсь обновить приложение angular до angular 9. Но это не удается, потому что одна из зависимостей требует npm> = 6.11.0:

npm ERR! notsup Unsupported engine for @angular-devkit/build-angular@0.901.12: wanted: {"node":">= 10.13.0","npm":">= 6.11.0","yarn":">= 1.13.0"} (current: {"node":"12.16.3","npm":"6.5.0"})

Я не могу запустить ng напрямую, потому что я постоянно переключаюсь между кодовыми базами с очень разными версиями узлов. Итак, я запускаю команду ng update --force @angular/core@9 @angular/cli@9 с npx.

Даже если я npm i -g npm, npx использует устаревшую npm версию:

$ npx npm --version
6.5.0

$ npm --version
6.14.7

Не вызывает возражений, это не обновляет npx npm:

$ npx npm i -g npm
/home/user/.nvm/versions/node/v12.16.3/bin/npm -> /home/user/.nvm/versions/node/v12.16.3/lib/node_modules/npm/bin/npm-cli.js
/home/user/.nvm/versions/node/v12.16.3/bin/npx -> /home/user/.nvm/versions/node/v12.16.3/lib/node_modules/npm/bin/npx-cli.js
+ npm@6.14.7
updated 1 package in 10.595s

$ npx npm --version
6.5.0

Почему это происходит? Как заставить npx использовать более свежую версию npm?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...