14

I updated npm and cordova, after which I'm not able to run any of the cordova commands from terminal. Here is the error which I get:

Avinash-mac-mini:~ avinash$ cordova
module.js:339
    throw err;


Error: Cannot find module 'umask'
    at Function.Module._resolveFilename (module.js:337:15)
    at Function.Module._load (module.js:287:25)
    at Module.require (module.js:366:17)
    at require (module.js:385:17)
    at Object.<anonymous> (/usr/local/lib/node_modules/cordova/node_modules/npm/lib/utils/umask.js:1:75)
    at Module._compile (module.js:425:26)
    at Object.Module._extensions..js (module.js:432:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:311:12)
    at Module.require (module.js:366:17)
yoko
  • 516
  • 1
  • 3
  • 18
Avinash
  • 812
  • 8
  • 17

2 Answers2

19

try executing

npm uninstall -g cordova 
npm install -g cordova@latest
frazras
  • 5,928
  • 4
  • 30
  • 40
-1

I had the same problem for cordova build ios command. According cordova documentation(https://cordova.apache.org/docs/en/latest/guide/cli/index.html) :

After you run the npm command above to update Cordova itself, you may need to ensure your project's resources conform to the latest version's requirements. Run a command such as the following for each platform you're building:

$ cordova platform update android
$ cordova platform update ios
...etc.

I have solved it by updating my ios platform after cordova updation:

 $ cordova platform update ios
Daria
  • 276
  • 1
  • 3
  • 13