1

I have ionic 3 app, and for some reason, it's not running ionic cordova run android

I have tried to downgrade firebase and @firebase along with android between 6.4.0 and 6.3.2, along with tweaking the version of so many libraries and dependencies!

This has been going on with sandbox project as well! and I searched the internet for it, but it seems to be a new error!

When you will read the error log down you will notice that it's compalining about Error: Can't resolve '@firebase/auth' in node_modules/firebase/auth thus here is the content of this file:

require('@firebase/auth'); // only one line, and when I click on it it's pointing to `node_modules/firebase/node_modules/@firebase/auth/dist/auth.js`

ionic info output:

cli packages: (/usr/local/lib/node_modules)

    @ionic/cli-utils  : 1.19.0
    ionic (Ionic CLI) : 3.19.0

global packages:

    cordova (Cordova CLI) : 7.1.0

local packages:

    @ionic/app-scripts : 3.1.2
    Cordova Platforms  : android 6.3.0
    Ionic Framework    : ionic-angular 3.9.2

System:

    Android SDK Tools : 25.2.5
    ios-deploy        : 1.9.2
    ios-sim           : 6.1.2
    Node              : v8.9.1
    npm               : 5.2.0
    OS                : macOS High Sierra
    Xcode             : Xcode 9.1 Build version 9B55

Environment Variables:

the exact error is as follows:

[21:34:40]  copy finished in 6.73 s
Error: ./node_modules/firebase/auth/index.js
Module not found: Error: Can't resolve '@firebase/auth' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/auth'
resolve '@firebase/auth' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/auth'
  Parsed request is a module
  using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./auth)
    Field 'browser' doesn't contain a valid alias configuration
  after using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./auth)
    resolve as module
      looking for modules in /Users/Mike/Code/ionic/foo-bar/node_modules
        using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          Field 'browser' doesn't contain a valid alias configuration
        after using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules/@firebase/auth)
            no extension
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth doesn't exist
            .ts
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth.ts doesn't exist
            .js
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth.js doesn't exist
            .json
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth.json doesn't exist
            as directory
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth doesn't exist
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth.ts]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth.js]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth.json]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/auth]
 @ ./node_modules/firebase/auth/index.js 17:0-25
 @ ./node_modules/angularfire2/auth/auth.module.js
 @ ./node_modules/angularfire2/auth/public_api.js
 @ ./node_modules/angularfire2/auth/index.js
 @ ./src/app/app.module.ts
 @ ./src/app/main.ts,./node_modules/firebase/database/index.js
Module not found: Error: Can't resolve '@firebase/database' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/database'
resolve '@firebase/database' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/database'
  Parsed request is a module
  using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./database)
    Field 'browser' doesn't contain a valid alias configuration
  after using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./database)
    resolve as module
      looking for modules in /Users/Mike/Code/ionic/foo-bar/node_modules
        using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          Field 'browser' doesn't contain a valid alias configuration
        after using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules/@firebase/database)
            no extension
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database doesn't exist
            .ts
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database.ts doesn't exist
            .js
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database.js doesn't exist
            .json
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database.json doesn't exist
            as directory
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database doesn't exist
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database.ts]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database.js]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database.json]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/database]
 @ ./node_modules/firebase/database/index.js 17:17-46
 @ ./node_modules/firebase/index.js
 @ ./src/providers/imgHandler.ts
 @ ./src/app/app.module.ts
 @ ./src/app/main.ts,./node_modules/firebase/firestore/index.js
Module not found: Error: Can't resolve '@firebase/firestore' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/firestore'
resolve '@firebase/firestore' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/firestore'
  Parsed request is a module
  using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./firestore)
    Field 'browser' doesn't contain a valid alias configuration
  after using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./firestore)
    resolve as module
      looking for modules in /Users/Mike/Code/ionic/foo-bar/node_modules
        using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          Field 'browser' doesn't contain a valid alias configuration
        after using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules/@firebase/firestore)
            no extension
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore doesn't exist
            .ts
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore.ts doesn't exist
            .js
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore.js doesn't exist
            .json
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore.json doesn't exist
            as directory
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore doesn't exist
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore.ts]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore.js]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore.json]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/firestore]
 @ ./node_modules/firebase/firestore/index.js 17:0-30
 @ ./node_modules/angularfire2/firestore/firestore.js
 @ ./node_modules/angularfire2/firestore/public_api.js
 @ ./node_modules/angularfire2/firestore/index.js
 @ ./src/app/app.module.ts
 @ ./src/app/main.ts,./node_modules/firebase/messaging/index.js
Module not found: Error: Can't resolve '@firebase/messaging' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/messaging'
resolve '@firebase/messaging' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/messaging'
  Parsed request is a module
  using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./messaging)
    Field 'browser' doesn't contain a valid alias configuration
  after using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./messaging)
    resolve as module
      looking for modules in /Users/Mike/Code/ionic/foo-bar/node_modules
        using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          Field 'browser' doesn't contain a valid alias configuration
        after using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules/@firebase/messaging)
            no extension
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging doesn't exist
            .ts
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging.ts doesn't exist
            .js
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging.js doesn't exist
            .json
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging.json doesn't exist
            as directory
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging doesn't exist
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging.ts]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging.js]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging.json]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/messaging]
 @ ./node_modules/firebase/messaging/index.js 17:0-30
 @ ./node_modules/firebase/index.js
 @ ./src/providers/imgHandler.ts
 @ ./src/app/app.module.ts
 @ ./src/app/main.ts,./node_modules/firebase/storage/index.js
Module not found: Error: Can't resolve '@firebase/storage' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/storage'
resolve '@firebase/storage' in '/Users/Mike/Code/ionic/foo-bar/node_modules/firebase/storage'
  Parsed request is a module
  using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./storage)
    Field 'browser' doesn't contain a valid alias configuration
  after using description file: /Users/Mike/Code/ionic/foo-bar/node_modules/firebase/package.json (relative path: ./storage)
    resolve as module
      looking for modules in /Users/Mike/Code/ionic/foo-bar/node_modules
        using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          Field 'browser' doesn't contain a valid alias configuration
        after using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules)
          using description file: /Users/Mike/Code/ionic/foo-bar/package.json (relative path: ./node_modules/@firebase/storage)
            no extension
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage doesn't exist
            .ts
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage.ts doesn't exist
            .js
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage.js doesn't exist
            .json
              Field 'browser' doesn't contain a valid alias configuration
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage.json doesn't exist
            as directory
              /Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage doesn't exist
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage.ts]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage.js]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage.json]
[/Users/Mike/Code/ionic/foo-bar/node_modules/@firebase/storage]
 @ ./node_modules/firebase/storage/index.js 17:0-28
 @ ./node_modules/firebase/index.js
 @ ./src/providers/imgHandler.ts
 @ ./src/app/app.module.ts
 @ ./src/app/main.ts
    at new BuildError (/Users/Mike/Code/ionic/foo-bar/node_modules/@ionic/app-scripts/dist/util/errors.js:16:28)
    at callback (/Users/Mike/Code/ionic/foo-bar/node_modules/@ionic/app-scripts/dist/webpack.js:121:28)
    at emitRecords.err (/Users/Mike/Code/ionic/foo-bar/node_modules/webpack/lib/Compiler.js:269:13)
    at Compiler.emitRecords (/Users/Mike/Code/ionic/foo-bar/node_modules/webpack/lib/Compiler.js:375:38)
    at emitAssets.err (/Users/Mike/Code/ionic/foo-bar/node_modules/webpack/lib/Compiler.js:262:10)
    at applyPluginsAsyncSeries1.err (/Users/Mike/Code/ionic/foo-bar/node_modules/webpack/lib/Compiler.js:368:12)
    at next (/Users/Mike/Code/ionic/foo-bar/node_modules/tapable/lib/Tapable.js:218:11)
    at Compiler.compiler.plugin (/Users/Mike/Code/ionic/foo-bar/node_modules/webpack/lib/performance/SizeLimitsPlugin.js:99:4)
    at Compiler.applyPluginsAsyncSeries1 (/Users/Mike/Code/ionic/foo-bar/node_modules/tapable/lib/Tapable.js:222:13)
    at Compiler.afterEmit (/Users/Mike/Code/ionic/foo-bar/node_modules/webpack/lib/Compiler.js:365:9)

package.json:

{
  "name": "foo-bar",
  "version": "2.0.1",
  "author": "Optimatec",
  "homepage": "http://ionicframework.com/",
  "private": true,
  "scripts": {
    "clean": "ionic-app-scripts clean",
    "build": "ionic-app-scripts build",
    "lint": "ionic-app-scripts lint",
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve"
  },
  "dependencies": {
    "@angular/common": "4.4.4",
    "@angular/compiler": "4.4.4",
    "@angular/compiler-cli": "4.4.4",
    "@angular/core": "4.4.4",
    "@angular/forms": "4.4.4",
    "@angular/http": "4.4.4",
    "@angular/platform-browser": "4.4.4",
    "@angular/platform-browser-dynamic": "4.4.4",
    "@ionic-native/app-version": "^4.4.2",
    "@ionic-native/call-number": "4.3.0",
    "@ionic-native/camera": "4.3.0",
    "@ionic-native/clipboard": "^4.4.2",
    "@ionic-native/core": "4.3.0",
    "@ionic-native/diagnostic": "4.3.0",
    "@ionic-native/facebook": "4.3.0",
    "@ionic-native/file": "4.3.0",
    "@ionic-native/file-chooser": "4.3.0",
    "@ionic-native/file-path": "4.3.0",
    "@ionic-native/file-transfer": "^4.4.2",
    "@ionic-native/firebase": "4.3.0",
    "@ionic-native/geolocation": "4.3.0",
    "@ionic-native/google-maps": "4.3.0",
    "@ionic-native/google-plus": "4.3.0",
    "@ionic-native/in-app-browser": "4.3.0",
    "@ionic-native/launch-navigator": "4.3.0",
    "@ionic-native/onesignal": "4.3.0",
    "@ionic-native/social-sharing": "4.3.0",
    "@ionic-native/splash-screen": "4.3.0",
    "@ionic-native/status-bar": "4.3.0",
    "@ionic-native/vibration": "4.3.0",
    "@ionic/storage": "2.1.3",
    "@ngx-translate/core": "8.0.0",
    "@ngx-translate/http-loader": "2.0.0",
    "angular2-moment": "^1.7.0",
    "angularfire2": "^5.0.0-rc.0",
    "branch-cordova-sdk": "^2.6.18",
    "call-number": "^1.0.1",
    "com.googlemaps.ios": "https://github.com/mapsplugin/cordova-plugin-googlemaps-sdk",
    "cordova-android": "^6.3.0",
    "cordova-clipboard": "^1.1.1",
    "cordova-plugin-actionsheet": "^2.3.3",
    "cordova-plugin-app-version": "^0.1.9",
    "cordova-plugin-camera": "^2.4.1",
    "cordova-plugin-compat": "^1.2.0",
    "cordova-plugin-device": "^1.1.7",
    "cordova-plugin-dialogs": "^1.3.4",
    "cordova-plugin-facebook4": "^1.9.1",
    "cordova-plugin-file": "^5.0.0",
    "cordova-plugin-file-transfer": "^1.7.0",
    "cordova-plugin-filechooser": "^1.0.1",
    "cordova-plugin-filepath": "^1.1.0",
    "cordova-plugin-firebase": "^0.1.24",
    "cordova-plugin-geolocation": "^2.4.3",
    "cordova-plugin-googlemaps": "^2.1.1",
    "cordova-plugin-googlemaps-sdk": "git+https://github.com/mapsplugin/cordova-plugin-googlemaps-sdk.git",
    "cordova-plugin-googleplus": "^5.1.1",
    "cordova-plugin-inappbrowser": "^1.7.2",
    "cordova-plugin-splashscreen": "^4.1.0",
    "cordova-plugin-statusbar": "^2.3.0",
    "cordova-plugin-vibration": "^2.1.6",
    "cordova-plugin-whitelist": "^1.3.3",
    "cordova-plugin-x-socialsharing": "^5.2.1",
    "cordova.plugins.diagnostic": "^3.7.2",
    "es6-promise-plugin": "^4.1.0",
    "firebase": "^4.5.0",
    "ionic-angular": "^3.7.1",
    "ionic-img-viewer": "2.7.0",
    "ionic-plugin-keyboard": "^2.2.1",
    "ionic2-rating": "^1.2.2",
    "ionicons": "3.0.0",
    "moment": "^2.19.2",
    "onesignal-cordova-plugin": "^2.2.4",
    "promise-polyfill": "6.1.0",
    "rxjs": "5.4.3",
    "sw-toolbox": "3.6.0",
    "uk.co.workingedge.phonegap.plugin.launchnavigator": "^4.1.0",
    "zone.js": "0.8.18"
  },
  "devDependencies": {
    "@ionic/app-scripts": "3.1.2",
    "typescript": "2.4.0"
  },
  "description": "An Ionic project",
  "cordova": {
    "plugins": {
      "cordova-plugin-x-socialsharing": {},
      "cordova-plugin-device": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-whitelist": {},
      "ionic-plugin-keyboard": {},
      "cordova-plugin-firebase": {},
      "call-number": {},
      "mx.ferreyra.callnumber": {},
      "cordova-plugin-vibration": {},
      "cordova-plugin-facebook4": {
        "APP_ID": "15196419",
        "APP_NAME": "FooBar"
      },
      "cordova-plugin-camera": {},
      "onesignal-cordova-plugin": {},
      "cordova-plugin-inappbrowser": {},
      "cordova-plugin-googleplus": {
        "REVERSED_CLIENT_ID": "com.googleusercontent.app"
      },
      "cordova.plugins.diagnostic": {},
      "cordova-plugin-filechooser": {},
      "cordova-plugin-filepath": {},
      "branch-cordova-sdk": {},
      "uk.co.workingedge.phonegap.plugin.launchnavigator": {},
      "cordova-clipboard": {},
      "cordova-plugin-app-version": {},
      "cordova-plugin-file-transfer": {},
      "cordova-plugin-googlemaps": {
        "API_KEY_FOR_ANDROID": "AIzaSyBYJVEVRyo7Az",
        "API_KEY_FOR_IOS": "AIzaSyCqe2DU",
        "LOCATION_WHEN_IN_USE_DESCRIPTION": "Show your location on the map",
        "LOCATION_ALWAYS_USAGE_DESCRIPTION": "Trace your location on the map"
      },
      "cordova-plugin-geolocation": {
        "GEOLOCATION_USAGE_DESCRIPTION": "To display to you the most close places based on your location"
      },
      "com.googlemaps.ios": {},
      "cordova-plugin-file": {}
    },
    "platforms": [
      "android"
    ]
  }
}
2
  • for sure I removed node_modules and package-lock.json and even deleted plugins folder since I have a bigger issue than this, which is google maps native is not working on Android, it's giving a grey background only! Commented Dec 3, 2017 at 18:48
  • There is one silly workaround, copying the content of node_modules/firebase/@firebase/ to node_modules/@firebase/ however, this will be undone everytime I run ionic cordova run or build!! it's obviously within firebase and angularfire Commented Dec 3, 2017 at 19:08

2 Answers 2

1

Sorry for reply a solved problem but i think it can be good to know a solution for someone who use @angular/4.* without downgrade dependencies, this is an @angular/* and ionic-angular issues, you should upgrade those dependencies.

Solved it like this :

npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save @angular/[email protected] 
npm install --save [email protected]
Sign up to request clarification or add additional context in comments.

Comments

0

It was all about firebase version it should not be 4.7.0 so I downgraded it.

The spell is:

npm install [email protected] --save

1 Comment

and btw, I faced so many problems because of node version as well! not npm guys, NODE itself, npm was working just fine with version 5.5.1 but I updated node to v9.2.0 and it helped me with google maps native grey background issue

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.