Phonegap Error + Error:找不到模块'q'

时间:2015-10-30 18:31:50

标签: cordova phonegap-build

尝试构建phonegap应用但奇怪的错误: -

user@ubuntu:~/Projects/PhoneGap/testapp$ phonegap build android
[phonegap] executing 'cordova build android'...
Running command: /home/user/Projects/PhoneGap/testapp/platforms/android/cordova/build 

module.js:338
    throw err;
          ^
Error: Cannot find module 'q'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:278:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/home/user/Projects/PhoneGap/testapp/platforms/android/cordova/lib/spawn.js:23:15)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)

You may not have the required environment or OS to build this project

cordova -v =&gt; 5.3.3

想要:{“node”:“0.8.x || 0.10.x”}(当前:{“node”:“0.12.7”,“npm”:“2.11.3”}

请提出建议..谢谢

5 个答案:

答案 0 :(得分:11)

我正在努力解决同样的问题并最终弄明白npm install q --save帮助我。

答案 1 :(得分:2)

我有同样的问题因为我的cordova android版本已被弃用。使用

升级
cordova platform update android

如此处所述:https://cordova.apache.org/docs/en/3.1.0/guide/platforms/android/upgrading.html

答案 2 :(得分:2)

这对我有用:

cordova platform remove android
cordova platform add android@7.0.0

答案 3 :(得分:1)

我知道这听起来很奇怪,但卸载并重新安装最新版本的NPM。

答案 4 :(得分:1)

最佳实践是在类节点项目中缺少某些内容时执行npm i .

缺少'q'表示完全没有生成node_modules文件夹。