npm WARN устарел core-js@2.6.11: core-js @ <3 больше не поддерживается и не рекомендуется для использования из-за ряда проблем


35

Я получаю ниже ошибку при создании нового приложения Angular -

npm WARN устарел core-js@2.6.11: core-js @ <3 больше не поддерживается и не рекомендуется для использования из-за ряда проблем. Пожалуйста, обновите ваши зависимости до актуальной версии core-js @ 3.

Я попробовал решение, приведенное в приведенной ниже ссылке, но у меня оно не сработало. Ошибка: обновите ваши зависимости до актуальной версии core-js @ 3

Когда я проверяю версию Angular с помощью команды 'ng --version', я вижу <error>версию для перечисленных ниже пакетов -

@angular-devkit/architect    
@angular-devkit/core         
@angular-devkit/schematics   
@schematics/angular          
@schematics/update   

Не могли бы вы подсказать, что пошло не так и что нужно сделать, чтобы это исправить?

PS - та же функциональность работала нормально днем ​​раньше. И уже созданные проекты работают локально.


1
Запустите команду «npm устаревшие» внутри вашего каталога проекта. И увидите разницу между текущей и разыскиваемой версиями пакетов. И попробуйте обновить их до нужной версии.
Surjeet Bhadauriya

1
с помощью команды «npm устаревшие» внутри директории проекта я получил список пакетов для обновления / установки. Я установил / обновил эти пакеты внутри директории проекта и затем смог успешно запустить приложение. Однако, когда я пытаюсь создать новый проект с помощью 'ng new test-project', я получаю ту же ошибку. Как мне решить эту проблему навсегда?
Jaihind

github.com/npm/npm/issues/19672#issuecomment-397323622 пожалуйста, обратитесь к этой теме
Деванш садхотра

Ответы:



16

Это проблема с кэшем npm. Идти по пути

C: \ Users \ JohnDoe \ AppData \ Roaming \ NPM-кэш

и удалите его содержимое. Затем откройте консоль в режиме администратора и npm installповторите команду



6

Вам следует обновить версию core-js до версии выше 3. npm install --save core-js@^3

Вы также можете обновить устаревшие пакеты, используя npm update [-g] [<pkg>...]


Я попытался установить версию 3 core-js, но она не работает. Я получаю ошибку ниже - npm WARN saveError ENOENT: нет такого файла или каталога, откройте 'D: \ TypeScript_WorkSpace \ package.json' npm WARN enoent ENOENT: нет такого файла или каталога, откройте 'D: \ TypeScript_WorkSpace \ package.json' npm WARN TypeScript_WorkSpace Нет описания npm WARN TypeScript_WorkSpace Нет поля репозитория. npm WARN TypeScript_WorkSpace Нет данных README npm WARN TypeScript_WorkSpace Нет поля лицензии. Если я запускаю эту команду из каталога проекта, она работает, но когда дело доходит до создания нового проекта, это не так.
Jaihind

Ваше второе предложение - хорошее начало, но я хотел бы добавить к вашему ответу, как определить, какие пакеты мы используем core-js @ для начала . Как только мы узнаем, как это сделать, ваша вторая строка имеет смысл сделать в качестве последнего шага.
klewis

3
@klewis Вы можете определить, какие пакеты используют core-js, выполнив команду npm ls core-js. Более того, вы можете специально определить ссылки v2, запустив npm ls core-js@2.
Пол Роу

3

Я наблюдал это предупреждающее сообщение в проекте Vaadin с Vaadin 14.1.3 после переключения с зависимости com.vaadin.vaadinна com.vaadin.vaadin-core. Предупреждение пропало после этих шагов:

  1. удалять package-lock.json
  2. выполнять mvn clean
  3. выполнять mvn update

где находится файл package-lock.json?
Себастьян Реми

В моем случае package-lock.json находится в корне проекта Vaadin. Это тот же каталог, в котором находится package.json, и то же самое место, где (в случае использования проекта Maven) ваш pom.xml.
С. Доу

2

Таким образом, проблема заключается в версии пакетов, которые у вас есть в вашем проекте.

Запустите команду npm outdatedвнутри директории вашего проекта. И посмотрите разницу между версиями пакетов CurrentAnd Wanted.

А затем обновите весь пакет до нужной версии.


3
Данные решения работают для конкретного проекта, но проблема в том, что та же проблема возникает, когда я пытаюсь создать любое другое новое приложение.
Jaihind
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.