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

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/build-angular@0.803.24

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.


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",

0

To polecenie tymczasowo naprawia sytuację:

npm i @angular-devkit/build-angular@0.803.24

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?


Prawdopodobnie dodanie --savedo polecenia powinno to naprawić.
Ashot

0

Uruchom także npm i @angular-builders/custom-webpack@8.4.1 --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

reports-web-client@0.0.0 C:\projects\2778\reports-web-client
+-- @angular-builders/custom-webpack@9.1.0
| `-- @angular-devkit/build-angular@0.901.1
`-- @angular-devkit/build-angular@0.803.8

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

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.