npm OSTRZEŻENIE przestarzałe core-js@2.6.11: core-js @ <3 nie jest już utrzymywany i nie jest zalecany do użytku ze względu na liczbę problemów


35

Występuje błąd poniżej podczas tworzenia nowej aplikacji Angular -

npm WARN przestarzałe core-js@2.6.11: core-js @ <3 nie jest już utrzymywany i nie jest zalecany do użycia ze względu na liczbę problemów. Zaktualizuj swoje zależności do rzeczywistej wersji core-js @ 3.

Wypróbowałem rozwiązanie podane w poniższym linku, ale nie działało ono dla mnie - Błąd: zaktualizuj swoje zależności do rzeczywistej wersji core-js @ 3

Gdy sprawdzam wersję Angulara za pomocą polecenia „ng --version”, widzę <error>jako wersję dla wymienionych poniżej pakietów -

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

Czy mógłby Pan zasugerować, co poszło nie tak i co należy zrobić, aby to naprawić?

PS - Ta sama funkcjonalność działała dobrze dzień wcześniej. A już utworzone projekty działają poprawnie lokalnie.


1
Uruchom polecenie „npm przestarzałe” w katalogu projektu. I zobacz różnicę między aktualną i poszukiwaną wersją pakietów. I spróbuj zaktualizować je, aby pasowały do ​​żądanej wersji.
Surjeet Bhadauriya,

1
z poleceniem „npm przestarzałe” w katalogu projektu dostałem listę pakietów do aktualizacji / instalacji. Zainstalowałem / zaktualizowałem te pakiety w katalogu projektu, a następnie mogłem pomyślnie uruchomić aplikację. Jednak gdy próbuję utworzyć nowy projekt z użyciem „nowego projektu testowego”, pojawia się ten sam błąd. Jak mam rozwiązać ten problem na stałe?
jaihind

Odpowiedzi:


18

Rzeczywiście problem dotyczył pamięci podręcznej. npm clean-installpracował


16

Jest to problem z pamięcią podręczną npm. Idź na ścieżkę

C: \ Users \ johndoe \ AppData \ Roaming \ npm-cache

i usuń jego zawartość. Następnie otwórz konsolę w trybie administratora i npm installponownie uruchom komendę


10

Próbować:

npm cache clean --force
npm install -g @angular/cli@latest

6

Powinieneś zaktualizować wersję core-js do wersji powyżej 3. npm install --save core-js@^3

Możesz także zaktualizować nieaktualne pakiety za pomocą npm update [-g] [<pkg>...]


Próbowałem zainstalować wersję 3 core-js, ale to nie działa. Występuje błąd - npm WARN saveError ENOENT: brak takiego pliku lub katalogu, otwórz „D: \ TypeScript_WorkSpace \ package.json” npm WARN enoent ENOENT: brak takiego pliku lub katalogu, otwórz „D: \ TypeScript_WorkSpace \ package.json” npm WARN TypeScript_WorkSpace Brak opisu npm WARN TypeScript_WorkSpace Brak pola repozytorium. npm WARN TypeScript_WorkSpace Brak danych README npm WARN TypeScript_WorkSpace Brak pola licencji. Jeśli uruchomię to polecenie z katalogu projektu, działa, ale jeśli chodzi o tworzenie nowego projektu, nie działa.
jaihind

twoja druga sugestia jest świetnym początkiem, ale chciałbym dodać do twojej odpowiedzi, w jaki sposób wykrywamy, od których pakietów używamy core-js @ . Kiedy już wiemy, jak to zrobić, to druga linia ma większy sens jako ostatni krok.
klewis

3
@klewis Możesz określić, które pakiety polegają na core-js, uruchamiając polecenie npm ls core-js. Co więcej, możesz konkretnie zidentyfikować referencje v2, uruchamiając npm ls core-js@2.
Paul Rowe

3

Zauważyłem ten komunikat ostrzegawczy w projekcie Vaadin z Vaadin 14.1.3 po zmianie z zależności com.vaadin.vaadinna com.vaadin.vaadin-core. Ostrzeżenie zniknęło po tych krokach:

  1. usunąć package-lock.json
  2. wykonać mvn clean
  3. wykonać mvn update

gdzie znajduje się plik package-lock.json?
Sébastien REMY

W moim przypadku pakiet-lock.json jest umieszczony w katalogu głównym projektu Vaadin. Jest to ten sam katalog, w którym znajduje się pakiet.json, i ten sam, w którym (w przypadku korzystania z projektu Maven) znajduje się plik pom.xml.
S. Doe

2

Problem dotyczy wersji pakietów, które masz w swoim projekcie.

Uruchom polecenie npm outdatedw katalogu projektu. I zobaczyć różnicę między CurrentI Wantedwersji pakietów.

A następnie zaktualizuj cały pakiet, aby pasował do żądanej wersji.


3
Podane rozwiązania działają w przypadku konkretnego projektu, ale problem polega na tym, że ten sam problem występuje, gdy próbuję utworzyć inną aplikację.
jaihind
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.