Nazwa zadania „..getProjectMetadata” nie istnieje

63

Zaktualizowałem mój kąt do wersji 9 i gdy próbuję wrócić do wersji 8, pojawia się ten błąd. Próbowałem już następujących czynności:

  • odinstaluj -global angular / cli
  • odinstaluj angular / cli
  • wróć do mojej ostatniej paczki.json
  • usuń folder node_module
  • usuń repozytorium

Ten błąd nadal występuje.

Mój stacktrace to:

An unhandled exception occurred: Job name "..getProjectMetadata" does not exist.
See angular-errors.log for further details.

angular-error.log:

[error] Error: Job name "..getProjectMetadata" does not exist.
    at Observable._subscribe (/Front/node_modules/@angular-devkit/core/src/experimental/jobs/simple-scheduler.js:350:23)
    at Observable._trySubscribe (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Observable.js:44:25)
    at Observable.subscribe (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Observable.js:30:22)
    at /Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeTo.js:22:31
    at Object.subscribeToResult (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeToResult.js:10:45)
    at SwitchMapSubscriber._innerSub (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:65:54)
    at SwitchMapSubscriber._next (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:55:14)
    at SwitchMapSubscriber.Subscriber.next (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Subscriber.js:66:18)
    at SwitchMapSubscriber.notifyNext (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:86:26)
    at InnerSubscriber._next (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/InnerSubscriber.js:28:21)
    at InnerSubscriber.Subscriber.next (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Subscriber.js:66:18)
    at /Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeTo.js:17:28
    at Object.subscribeToResult (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeToResult.js:10:45)
    at SwitchMapSubscriber._innerSub (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:65:54)
    at SwitchMapSubscriber._next (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:55:14)
    at SwitchMapSubscriber.Subscriber.next (/Front/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Subscriber.js:66:18)

ng --wersja:

Angular CLI: 8.3.18
Node: 12.15.0
OS: darwin x64
Angular: 8.2.13
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.803.18
@angular-devkit/build-angular     0.900.1
@angular-devkit/build-optimizer   0.900.1
@angular-devkit/build-webpack     0.900.1
@angular-devkit/core              8.3.18
@angular-devkit/schematics        8.3.18
@angular/cdk                      8.2.3
@angular/cli                      8.3.18
@angular/material                 8.2.3
@ngtools/webpack                  9.0.1
@schematics/angular               8.3.18
@schematics/update                0.803.18
rxjs                              6.5.3
typescript                        3.5.3
webpack                           4.41.2
Guillaume Gaujac
źródło
2
Wystąpił ten błąd po uruchomieniu npm audit fix. Mimo że blokuję zależności, wciąż aktualizuję do wersji kątowej 9, której nie chcę. Jak zawsze w przypadku głównych wydań Angular, bardzo niewygodna i kłopotliwa aktualizacja. Radzę pozostać na Angular 8, jeśli nie jest to absolutnie konieczne, wiele zależności nie jest jeszcze zaktualizowanych do najnowszej wersji i spowoduje wiele błędów.
Michał Anioł

Odpowiedzi:

186

Wygląda na to, że jest to problem z @angular-devkit/build-angular... Spróbuj obniżyć go do konkretnej wersji:

npm i @angular-devkit/[email protected]
Occian Fumnanya Diaali
źródło
5
Idealna odpowiedź !!
Lathy
3
Uratowałeś mi dzień!
zs2020
2
@AtifMajeed powinieneś używać wersji 0.803.24, a nie 0.900.4
Ben
1
Pracowałem dla mnie, ale nie rozumiem dlaczego, nie zaktualizowałem kątownika. Zrobiłemnpm audit fix
Germán Acosta
1
Zacząłem również otrzymywać ten błąd po npm audit fixdniu dzisiejszym. Zasadniczo zrozumiałem npm audit fix, że automatycznie wykrywa wszystkie wrażliwe pakiety i aktualizuje za pomocą ustalonych wersji, jeśli są dostępne. Ale nie powinno to robić automatycznie żadnej takiej zepsutej aktualizacji. Musi więc istnieć jakiś błąd ze strony opiekuna tego pakietu, który spowodował, że audyt npm nie był świadomy przełomowej zmiany.
rineez
2

Miałem ten sam problem i rozwiązałem go, obniżając @angular-devkit/build-angular.wersję do wersji, 0.803.24jak powiedział Occian Fumnanya Dia w swojej odpowiedzi powyżej. Jeśli po obniżeniu wersji nadal pojawia się ten sam błąd, spróbuj usunąć folder platformsi uruchom ponownie ionic cordova run <platform>. Wymień <platform>się androidlubios .

Odtworzy folder plaforms z nowymi rzeczami.

Mam nadzieję, że to pomoże.

FQuouhadiho
źródło
0

Zamiast usuwać całe foldery node_modules, po prostu zmień jego nazwę i spróbuj

npm install 
sudo npm install --unsafe-perm //for macOS

Poniżej znajdują się moje wersje pakietów kątowych -

"@angular-devkit/build-angular": "0.802.0",
"@angular-devkit/core": "8.2.0",
"@angular/animations": "8.2.0",
"@angular/cli": "8.2.0",
"@angular/common": "8.2.0",
"@angular/compiler": "8.2.0",
"@angular/compiler-cli": "8.2.0",
"@angular/core": "8.2.0",
Kapil Raghuwanshi
źródło
0

To polecenie tymczasowo naprawia sytuację:

npm i @angular-devkit/[email protected]

Moja kompilacja Jenkins wymaga ode mnie uruchomienia komendy naprawy audytu npm, aby pobrać zależności. To polecenie powoduje, że ten sam błąd pojawia się ponownie. Czy ktoś ma pomysł, jak sprawić, aby polecenie audytu ignorowało angula-devkit?

Toma Šimunić
źródło
Prawdopodobnie dodanie --savedo polecenia powinno to naprawić.
Ashot
0

Uruchom także npm i @angular-builders/[email protected] --save

Dla mnie odpowiedź Occiana nie była wystarczająca, musiałem też zmienić się @angular-builders/custom-webpackz latestna 8.4.1, ponieważ miała build-angularteż zależność. Oto jak to rozgryźć:

lista npm @ angular-devkit / build-angular

[email protected] C:\projects\2778\reports-web-client
+-- @angular-builders/[email protected]
| `-- @angular-devkit/[email protected]
`-- @angular-devkit/[email protected]

Co oznaczało, że miałem 2 wersje pakietu i dlatego błąd nadal się pojawiał.

Strzał
źródło