Ionic package build failed - ionic angular toolkit

7k Views Asked by At

Build error even after several tries of cleaning the system up from scratch.

Question: What is the best procedure to detect the source problem and fix it.

Build Command

ionic cordova build android ERROR

ng.cmd run app:ionic-cordova-build --platform=android An unhandled exception occurred: Could not find the implementation for builder @ionic/angular-toolkit:cordova-build See "C:\Users\username\AppData\Local\Temp\ng-DhZAYC\angular-errors.log" for further details. [ERROR] An error occurred while running subprocess ng.

    ng.cmd run app:ionic-cordova-build --platform=android exited with exit code 127.

    Re-running this command with the --verbose flag may provide more information.

Verbose ionic verbose info

System Info

Ionic:

Ionic CLI : 6.11.10 (C:\Users\username\AppData\Roaming\npm\node_modules@ionic\cli) Ionic Framework : @ionic/angular 4.11.13
@angular-devkit/build-angular : 0.1001.4 @angular-devkit/schematics : 10.1.4 @angular/cli : 11.0.0-next.4
@ionic/angular-toolkit : 1.5.1

Cordova:

Cordova CLI : 10.0.0 Cordova Platforms : 6.0.0, android 9.0.0, browser, ios 5.1.1 Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 3.1.2, (and 22 other plugins)

Utility:

cordova-res : 0.15.1 native-run (update available: 1.2.1) : 0.2.9

System:

Android SDK Tools : 26.1.1 (C:\Users\username\AppData\Local\Android\Sdk) NodeJS : v12.10.0 (C:\Program Files\nodejs\node.exe) npm : 6.13.7 OS : Windows 10

package.json

{   "name": "myapp",   "version": "0.0.30",   "author": "",   "homepage": "",   "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "ionic:build-obsolet": "ionic-app-scripts build android --release --prod  --wwwDir www --buildDir build"   },   "private": true,   "dependencies": {
    "@angular-devkit/build-angular": "^0.1001.4",
    "@angular/common": "^11.0.0-next.4",
    "@angular/core": "^11.0.0-next.4",
    "@angular/fire": "^5.1.3",
    "@angular/forms": "^11.0.0-next.4",
    "@angular/http": "^7.2.2",
    "@angular/platform-browser": "^11.0.0-next.4",
    "@angular/platform-browser-dynamic": "^11.0.0-next.4",
    "@angular/router": "^11.0.0-next.4",
    "@ionic-native/android-permissions": "^5.11.0",
    "@ionic-native/app-version": "^5.9.0",
    "@ionic-native/calendar": "^5.9.0",
    "@ionic-native/camera": "^5.23.0",
    "@ionic-native/core": "^5.21.0",
    "@ionic-native/device": "^5.11.0",
    "@ionic-native/email-composer": "^5.15.1",
    "@ionic-native/fcm": "^5.15.1",
    "@ionic-native/firebase": "^5.5.1",
    "@ionic-native/firebase-x": "^5.24.0",
    "@ionic-native/http": "^5.24.0",
    "@ionic-native/image-picker": "^5.9.0",
    "@ionic-native/in-app-browser": "^5.13.0",
    "@ionic-native/is-debug": "^5.23.0",
    "@ionic-native/keyboard": "^5.9.0",
    "@ionic-native/native-storage": "^5.10.0",
    "@ionic-native/network": "^5.11.0",
    "@ionic-native/open-native-settings": "^5.8.0",
    "@ionic-native/qr-scanner": "^5.6.1",
    "@ionic-native/screenshot": "^5.9.0",
    "@ionic-native/social-sharing": "^5.9.0",
    "@ionic-native/splash-screen": "^5.0.0",
    "@ionic-native/status-bar": "^5.0.0",
    "@ionic/angular": "^4.5.0",
    "@ionic/storage": "^2.2.0",
    "@types/chart.js": "^2.8.5",
    "@types/cordova": "0.0.34",
    "ajv": "^6.10.0",
    "angularfire2": "^5.1.3",
    "animejs": "^3.0.1",
    "calendar-utils": "^0.3.1",
    "chart.js": "^2.8.0",
    "com.darktalker.cordova.screenshot": "^0.1.6",
    "cordova-android": "^9.0.0",
    "cordova-browser": "^6.0.0",
    "cordova-ios": "^5.1.1",
    "cordova-open-native-settings": "^1.5.2",
    "cordova-plugin-add-swift-support": "^2.0.2",
    "cordova-plugin-advanced-http": "^2.2.0",
    "cordova-plugin-android-permissions": "^1.0.2",
    "cordova-plugin-androidx": "^1.0.2",
    "cordova-plugin-androidx-adapter": "^1.1.0",
    "cordova-plugin-app-version": "^0.1.9",
    "cordova-plugin-calendar": "^5.1.4",
    "cordova-plugin-camera": "^4.1.0",
    "cordova-plugin-device": "^2.0.2",
    "cordova-plugin-email-composer": "^0.9.2",
    "cordova-plugin-file": "^6.0.2",
    "cordova-plugin-firebasex": "^7.0.0",
    "cordova-plugin-inappbrowser": "^3.1.0",
    "cordova-plugin-ionic-keyboard": "^2.1.3",
    "cordova-plugin-ionic-webview": "^3.1.2",
    "cordova-plugin-is-debug": "^1.0.0",
    "cordova-plugin-qrscanner": "^3.0.1",
    "cordova-plugin-safariviewcontroller": "^1.6.0",
    "cordova-plugin-splashscreen": "^5.0.2",
    "cordova-plugin-statusbar": "^2.4.2",
    "cordova-plugin-telerik-imagepicker": "^2.3.2",
    "cordova-plugin-whitelist": "^1.3.3",
    "cordova-plugin-x-socialsharing": "^5.4.7",
    "cordova-res": "^0.15.1",
    "cordova-sqlite-storage": "^3.2.1",
    "core-js": "^2.5.4",
    "errorhandler": "^1.5.1",
    "es6-promise-plugin": "^4.2.2",
    "firebase": "^7.22.0",
    "firebase-admin": "^9.2.0",
    "g": "^2.0.1",
    "guid-typescript": "^1.0.9",
    "ionic2-calendar": "^0.5.7",
    "lab": "18.0.2",
    "native-run": "^0.2.7",
    "rxjs": "^6.5.3",
    "signal-exit": "^3.0.2",
    "web": "0.0.2",
    "xcode": "^2.0.0",
    "zone.js": "~0.10.3"   },   "devDependencies": {
    "@angular-devkit/architect": "^0.1001.4",
    "@angular-devkit/core": "^10.1.4",
    "@angular-devkit/schematics": "^10.1.4",
    "@angular/cli": "11.0.0-next.4",
    "@angular/compiler": "~11.0.0-next.4",
    "@angular/compiler-cli": "~11.0.0-next.4",
    "@angular/language-service": "~11.0.0-next.4",
    "@ionic/angular-toolkit": "^1.4.1",
    "@ionic/lab": "^3.2.9",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "~10.12.0",
    "codelyzer": "~4.5.0",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~5.2.3",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "node-sass": "^4.12.0",
    "protractor": "~7.0.0",
    "ts-node": "~8.0.0",
    "tslint": "~6.1.3",
    "typescript": "^4.0.3"   },   "description": "An Ionic project",   "cordova": {
    "plugins": {
      "cordova-plugin-whitelist": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-device": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-ionic-webview": {
        "ANDROID_SUPPORT_ANNOTATIONS_VERSION": "27.+"
      },
      "cordova-plugin-ionic-keyboard": {},
      "cordova-plugin-qrscanner": {},
      "cordova-open-native-settings": {},
      "cordova-sqlite-storage": {},
      "cordova-plugin-telerik-imagepicker": {
        "PHOTO_LIBRARY_USAGE_DESCRIPTION": " edit user profile "
      },
      "cordova-plugin-calendar": {
        "CALENDAR_USAGE_DESCRIPTION": " add party event to calendar ",
        "CONTACTS_USAGE_DESCRIPTION": " add contact to user "
      },
      "cordova-plugin-app-version": {},
      "com.darktalker.cordova.screenshot": {},
      "cordova-plugin-x-socialsharing": {
        "ANDROID_SUPPORT_V4_VERSION": "24.1.1+"
      },
      "cordova-plugin-safariviewcontroller": {},
      "cordova-plugin-inappbrowser": {},
      "cordova-plugin-advanced-http": {
        "OKHTTP_VERSION": "3.10.0"
      },
      "cordova-plugin-email-composer": {
        "ANDROID_SUPPORT_V4_VERSION": "27.+"
      },
      "cordova-plugin-android-permissions": {},
      "cordova-plugin-firebasex": {
        "ANDROID_FIREBASE_ANALYTICS_VERSION": "17.0.0",
        "FIREBASE_ANALYTICS_COLLECTION_ENABLED": "true",
        "FIREBASE_PERFORMANCE_COLLECTION_ENABLED": "true",
        "FIREBASE_CRASHLYTICS_COLLECTION_ENABLED": "true",
        "ANDROID_ICON_ACCENT": "#FF00FFFF",
        "ANDROID_PLAY_SERVICES_TAGMANAGER_VERSION": "17.0.0",
        "ANDROID_FIREBASE_MESSAGING_VERSION": "20.0.0",
        "ANDROID_FIREBASE_CONFIG_VERSION": "19.0.3",
        "ANDROID_FIREBASE_PERF_VERSION": "19.0.1",
        "ANDROID_FIREBASE_AUTH_VERSION": "19.1.0",
        "ANDROID_CRASHLYTICS_VERSION": "2.10.1",
        "ANDROID_CRASHLYTICS_NDK_VERSION": "2.1.1"
      },
      "cordova-plugin-camera": {
        "ANDROID_SUPPORT_V4_VERSION": "27.+"
      },
      "cordova-plugin-is-debug": {}
    },
    "platforms": [
      "browser",
      "android",
      "ios"
    ]   } }

What I tried without success. Deleting node_modules manually (then npm i), restarting systems and use of commands below...

ionic repair
npm i @angular-devkit/architect@latest @angular-devkit/build-angular@latest @angular-devkit/core@latest @angular-devkit/schematics@latest

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest
npm install

npm i @ionic/angular-toolkit

npm audit fix
npm audit fix --force


npm update
ng update
ng update @angular/cli
ng update @angular/core

Ionic Serve Additional error info on ionic serve:

[ng] Schema validation failed with the following errors:
[ng]   Data path "" should NOT have additional properties(es5BrowserSupport).

[ERROR] ng has unexpectedly closed (exit code 1).

        The Ionic CLI will exit. Please check any output above for error details.
3

There are 3 best solutions below

1
On

According to this folowwing error;

[ng] Schema validation failed with the following errors:
[ng]   Data path "" should NOT have additional properties(es5BrowserSupport).

You should edit angular.json file and find "es5BrowserSupport": true | false and remove it.

line removal screenshot


The es5BrowserSupport option is a deprecated option that controls whether ES5 targeted builds will include a separate conditionally loaded polyfill for older browsers. It was the precursor to full differential loading support and has been removed.

BREAKING CHANGE
Deprecated browser builder option es5BrowserSupport has been removed. The inclusion for ES5 polyfills will be determined from the browsers listed in the browserslist configuration.

https://github.com/angular/angular-cli/pull/17484

0
On

The property es5BrowserSupport was deprecated and has been removed. The inclusion for ES5 polyfills will be determined from the browsers listed in the browserslist configuration.

0
On

you might need to upgrade your @angular-devkit/build-angular or @angular-devkit/architect or both maybe to version ^0.11 (check versions in their respective npm package in npmjs.com) because ^0.11 goes with version 11 of @angular/cli