簡體   English   中英

作業名稱“..getProjectMetadata”不存在

[英]Job name "..getProjectMetadata" does not exist

我將 angular 更新為 v9,當我嘗試返回 v8 時,收到此錯誤。 我已經嘗試了以下方法:

  • 卸載-全局角度/cli
  • 卸載角度/cli
  • 回到我上一個 package.json
  • 刪除 node_module 文件夾
  • 刪除回購

此錯誤繼續顯示。

我的堆棧跟蹤是:

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

角度錯誤。日志:

[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 --version :

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

@angular-devkit/build-angular似乎有問題.. 嘗試將其降級到特定版本:

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

npm i @angular-builders/custom-webpack@8.4.1 --save

對我來說, Occian 的回答還不夠,我還必須將@angular-builders/custom-webpacklatest更改為8.4.1 ,因為它也有build-angular依賴性。 這是如何弄清楚的:

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

這意味着,我有 2 個版本的包,這就是錯誤仍然會出現的原因。

就個人而言,最好的解決方案是:

ng update @angular/cli @angular/core

為什么? 因為遲早你需要升級到 Angular 9+,而其他解決方案只是將其降級。

我今天面臨同樣的問題,直到我使用了這個解決方案並且這個解決方案運行良好。

此命令暫時修復了這種情況:

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

我的 Jenkins 構建要求我運行npm audit fix命令來下載依賴項。 此命令再次出現相同的錯誤。 任何人都知道如何使審計命令忽略 angula-devkit?

如果您使用 npm audit fix,請找到您嘗試修復的包並恢復到穩定版本並注意漏洞。

將以下版本用於當前的角度版本:

@angular-devkit/build-angular@0.8.9 v6-lts

@angular-devkit/build-angular@0.13.10 v7-lts

@angular-devkit/build-angular@0.803.29 v8-lts

@angular-devkit/build-angular@0.901.13 v9-lts

@angular-devkit/build-angular@0.1002.1 v10-lts

查看最新的當前標簽版本@angular-devkit/build-angular

我遇到了同樣的問題並通過降級@angular-devkit/build-angular.解決了它@angular-devkit/build-angular. 正如 Occian Fumnanya Dia 在上面回答中所說,版本為0.803.24如果在降級版本后仍然出現相同的錯誤,請嘗試刪除文件夾platforms並使用ionic cordova run <platform>重新運行。 <platform>替換為androidios

它將使用新內容重新創建文件夾plaforms

希望能幫助到你。

我通過打開修復它

package.json 文件

並在下一行更新

@angular-devkit/build-angular": "^0.803.8"

然后運行

我的

而不是刪除整個 node_modules 文件夾,只需重命名它並嘗試

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

請在下面找到我的 angular 包版本 -

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

這個cmd解決了問題

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

根據我的經驗,您正在使用的新模塊是為 angular9 設計的,如果可能,您應該將導入升級為:

 "dependencies": {
    "@angular/animations": "^9.1.9",
    "@angular/cdk": "^9.2.4",
    "@angular/common": "^9.1.9",
    "@angular/compiler": "^9.1.9",
    "@angular/core": "^9.1.9",
    "@angular/forms": "^9.1.9",
    "@angular/platform-browser": "^9.1.9",
    "@angular/platform-browser-dynamic": "^9.1.9",
    "@angular/router": "^9.1.9",
 ...
}
"devDependencies": {
    "@angular-devkit/build-angular": "^0.901.7",
    "@angular/cli": "^9.1.7",
    "@angular/compiler-cli": "^9.1.9",
    "@angular/language-service": "^9.1.9",
   ...
}

只需根據您的版本安裝@angular-devkit/build-angular,就像您有 angular V.8 一樣,然后嘗試這個或找到您的版本並根據您的 angular 版本安裝它。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM