我正在尝试使用离子cordova运行我的应用程序运行android但它失败了 .
请帮忙 .
谢谢 .
这是我的例外
FAILURE: Build failed with an exception.
-
其中:构建文件'C:\ My Drive \ Demo \ Mobile App \ IonicApps \ TestApp \ platforms \ android \ CordovaLib \ build.gradle'行:40
-
出了什么问题:评估项目':CordovaLib'时出现问题 .
com / google / gson / JsonParseException
-
尝试:使用--stacktrace选项运行以获取堆栈跟踪 . 使用--info或--debug选项运行以获取更多日志输出 .
-
在https://help.gradle.org获取更多帮助
在1s内构建失败(节点:11680)UnhandledPromiseRejectionWarning:错误:cmd:命令失败,退出代码1错误输出:FAILURE:构建失败,异常 .
-
其中:构建文件'C:\ My Drive \ Demo \ Mobile App \ IonicApps \ TestApp \ platforms \ android \ CordovaLib \ build.gradle'行:40
-
出了什么问题:评估项目':CordovaLib'时出现问题 .
com / google / gson / JsonParseException
-
尝试:使用--stacktrace选项运行以获取堆栈跟踪 . 使用--info或--debug选项运行以获取更多日志输出 .
-
在https://help.gradle.org获取更多帮助
在emitTwo的ChildProcess.whenDone(C:\ My Drive \ Demo \ Mobile App \ IonicApps \ TestApp \ platforms \ android \ cordova \ node_modules \ cordova-common \ src \ superspawn.js:169:23)中以1s Build 失败(事件) .js:126:13)在ChildProcess.emit(events.js:214:7)的mayClose(internal / child_process.js:925:16)处理Process.ChildProcess._handle.onexit(internal / child_process.js:209: 5)(node:11680)UnhandledPromiseRejectionWarning:未处理的承诺拒绝 . 此错误源于通过抛出异步函数而没有catch块,或者拒绝未使用.catch()处理的promise . (拒绝ID:1)(节点:11680)[DEP0018]弃用警告:不推荐使用未处理的拒绝承诺 . 将来,未处理的承诺拒绝将使用非零退出代码终止Node.js进程 .
1 回答
我通过以下技巧做出了这样的麻烦 .
首先,保持您的全局npm库 - npm , ionic-cli , cordova 为最新 .
然后,您应该将平台 cordova-android@6.3.0 安装(可能已降级)到您的cordova项目中 . 为此目的,强制安装插件 cordova-plugin-compat@1.2.0 .
添加平台后,创建一个所谓的 build-extras.gradle 文件,其中包含以下内容以克服 cordova-android@6.3.0 问题 .
将此文件放入 platforms/android 文件夹 .
稍后再试一次
cordova build android
!PS: cordova-android@6.4+ 会导致恼人的失败 .