Ionic-cli: [Bug][Crit] TypeError: Can't call method on undefined ??

Created on 4 Jun 2016  路  22Comments  路  Source: ionic-team/ionic-cli

I recently faced this issue when trying to compile android and send the apk to Google Play, need urgent help:

[16:18:53] Finished 'build' after 19 s
[16:18:53] Starting 'build:before'...
[16:18:53] Finished 'build:before' after 3.78 渭s

Running command: /mnt/LinHDD/Carlos/Programming/taoappionic2/hooks/after_prepare/010_add_platform_class.js /mnt/LinHDD/Carlos/Programming/taoappionic2


add to body class: platform-android

ANDROID_HOME=/mnt/LinHDD/Android/Sdk

JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

null

org.xwalk:xwalk_core_library_beta:18+


Caught exception:
 TypeError: Can't call method on  undefined
    at TypeError (native)
    at module.exports (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:167:19)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:40:16
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:193:9
    at [object Object].Console.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:186:17)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:157:13
    at _each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:156:9)
    at [object Object].Logger.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:214:9)
    at [object Object].target.(anonymous function) [as error] (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/home/carlos/.npm-global/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:95:20)
    at Socket.emit (events.js:182:7)
    at readableAddChunk (_stream_readable.js:153:18)
    at Socket.Readable.push (_stream_readable.js:111:10)
    at Pipe.onread (net.js:534:20) 

Mind letting us know? https://github.com/driftyco/ionic-cli/issues


Caught exception:
 TypeError: Can't call method on  undefined
    at TypeError (native)
    at module.exports (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:167:19)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:40:16
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:193:9
    at [object Object].Console.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:186:17)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:157:13
    at _each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:156:9)
    at [object Object].Logger.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:214:9)
    at [object Object].target.(anonymous function) [as error] (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/home/carlos/.npm-global/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:95:20)
    at Socket.emit (events.js:182:7)
    at readableAddChunk (_stream_readable.js:153:18)
    at Socket.Readable.push (_stream_readable.js:111:10)
    at Pipe.onread (net.js:534:20) 

Mind letting us know? https://github.com/driftyco/ionic-cli/issues


BUILD FAILED

Total time: 3.101 secs


Caught exception:
 TypeError: Can't call method on  undefined
    at TypeError (native)
    at module.exports (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:167:19)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:40:16
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:193:9
    at [object Object].Console.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:186:17)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:157:13
    at _each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:156:9)
    at [object Object].Logger.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:214:9)
    at [object Object].target.(anonymous function) [as error] (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/home/carlos/.npm-global/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:95:20)
    at Socket.emit (events.js:182:7)
    at readableAddChunk (_stream_readable.js:153:18)
    at Socket.Readable.push (_stream_readable.js:111:10)
    at Pipe.onread (net.js:534:20) 

Mind letting us know? https://github.com/driftyco/ionic-cli/issues


Caught exception:
 TypeError: Can't call method on  undefined
    at TypeError (native)
    at module.exports (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/mnt/LinHDD/Carlos/Programming/taoappionic2/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:167:19)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:40:16
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:193:9
    at [object Object].Console.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:186:17)
    at /home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:157:13
    at _each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/node_modules/async/lib/async.js:156:9)
    at [object Object].Logger.log (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/logger.js:214:9)
    at [object Object].target.(anonymous function) [as error] (/home/carlos/.npm-global/lib/node_modules/ionic/node_modules/ionic-app-lib/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/home/carlos/.npm-global/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:95:20)
    at Socket.emit (events.js:182:7)
    at readableAddChunk (_stream_readable.js:153:18)
    at Socket.Readable.push (_stream_readable.js:111:10)
    at Pipe.onread (net.js:534:20) 

Mind letting us know? https://github.com/driftyco/ionic-cli/issues

Caught exception:
 undefined 
bug

Most helpful comment

@almost92 From what I can tell, cordova.js is trying to log an error with.bold(), which throws an exception. If you want to see the error that's being logged, remove .bold() from /lib/node_modules/ionic/lib/utils/cordova.js:83:11

This is a hack, but it'll allow you to see what the underlying issue it.

All 22 comments

Update: After copying the config.xml, deleting some values that were not there, and using ionic state reset the project compiles again, but still that caught exception still shows up, even if it's just a warning it's freaking me out.

Hello all! Is this still an issue with the latest version of ionic? Thanks!

It still shows those errors when compiling Android, tough the app works fine.

Hmm, how are you installing the android sdk? By installing Android studio?

Also, what version of the cli are you running?

I'm not sure if i'll be able to replicate again, i have to re-install OS since the mac i was working on just broke.

And yes i installed through Android Studio, i think it's most likely the config in the .xml file since i was unable to compile until i try and update that file with the latest version of the starters.

@Luchillo ahh ok. I will close this issue for now, but if you run into it again feel free to comment and i will happily reopen. Thanks for using Ionic!

I am getting the same when running ionic build android, how can I solve it ?

I have jdk 1.7, npm version 3.10.5 and I got the android sdk using the package manager of android studio.

@almost92 From what I can tell, cordova.js is trying to log an error with.bold(), which throws an exception. If you want to see the error that's being logged, remove .bold() from /lib/node_modules/ionic/lib/utils/cordova.js:83:11

This is a hack, but it'll allow you to see what the underlying issue it.

@jgw96 Where should we report this .bold() method so it get's fixed, here in ionic or in cordova?

Thank you @davidwdan, that did the trick.
In my version, the line is 213, and
log.info(('Setup Live Reload').green.bold);'
should be
log.info(('Setup Live Reload').green);

cordova 6.3.1
ionic 2.0.0

Thanks again!

@jgw96 There's still the same error happening with that .bold() method, literally where should we report this so it can be fixed?

@nobol Dude, i literally don't see a difference between your before/after comparison.

getting the same error here

Check https://github.com/driftyco/ionic-cli/issues/1038#issuecomment-234997779 to remove the error that hides your real error.

I fixed it by simply doing "ionic resources", then all of a sudden it gave "BUILD SUCCESSFUL"

Well i had this issue by a resources error, and some other times were different errors, the issue is that the .bold issue hides the real issue you're having, thus harder to spot the issue that triggered the .bold one.

I just experienced the error, #1038 (comment) was helping, but I'm still wondering why the ionic CLI crashes and isn't able to produce the real underlying error message (which in my case was a missing sdk level for android) Doesnt this need further inspection?

I also experienced this error. removing bold from cordova.js helped

Also suffering from this problem when doing an $ ionic run ios

Caught exception:
 TypeError: Can't call method on  undefined
    at module.exports (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:167:19)
    at /usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:40:16
    at /usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:193:9
    at exports.Console.Console.log (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:186:17)
    at /usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:157:13
    at _each (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:156:9)
    at exports.Logger.Logger.log (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:214:9)
    at exports.Logger.target.(anonymous function) [as error] (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/usr/local/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:101:20)

Mind letting us know? https://github.com/driftyco/ionic-cli/issues


Caught exception:
 TypeError: Can't call method on  undefined
    at module.exports (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:167:19)
    at /usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:40:16
    at /usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:193:9
    at exports.Console.Console.log (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:186:17)
    at /usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:157:13
    at _each (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:156:9)
    at exports.Logger.Logger.log (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:214:9)
    at exports.Logger.target.(anonymous function) [as error] (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/usr/local/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:101:20)

Mind letting us know? https://github.com/driftyco/ionic-cli/issues


Caught exception:
 TypeError: Can't call method on  undefined
    at module.exports (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/_defined.js:3:28)
    at createHTML (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/_string-html.js:7:19)
    at bold (/Users/mike/Code/sandwich-van/SandwichVan/node_modules/core-js/modules/es6.string.bold.js:5:12)
    at cb (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:206:7)
    at done (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:167:19)
    at /usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:40:16
    at /usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:193:9
    at exports.Console.Console.log (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/transports/console.js:127:3)
    at emit (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:186:17)
    at /usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:157:13
    at _each (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:57:9)
    at Object.async.each (/usr/local/lib/node_modules/ionic/node_modules/async/lib/async.js:156:9)
    at exports.Logger.Logger.log (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/logger.js:214:9)
    at exports.Logger.target.(anonymous function) [as error] (/usr/local/lib/node_modules/ionic/node_modules/winston/lib/winston/common.js:54:18)
    at Socket.<anonymous> (/usr/local/lib/node_modules/ionic/lib/utils/cordova.js:83:11)
    at emitOne (events.js:101:20)

Mind letting us know? https://github.com/driftyco/ionic-cli/issues

No clues on how to trace back to the source of the probem.
Removed all hooks from project in case it was one of them - no change.

Thank you @davidwdan !! This livereload problem was destroying my life. Removing the .bold made everything work.

What? is this issue still bothering people in latest version? the Ionic staff should have fixed it long ago, is not that big of a change for god's sake.

Was this page helpful?
0 / 5 - 0 ratings