Can';t使用Gradle构建Ionic/Cordova Android项目

Can';t使用Gradle构建Ionic/Cordova Android项目,android,cordova,gradle,ionic,Android,Cordova,Gradle,Ionic,我是第一次尝试爱奥尼亚。我对iOS没有任何问题,但为Android构建演示应用程序会给我一个几乎没有信息的错误(见下文)。在我看来,问题可能出在Cordova附带的gradle配置文件上,但如果可以避免的话,我不认为Cordova编辑平台特定文件是一种良好的做法 [myApp]Bro? ionic build android Running command: /Users/x/Documents/Dev/myApp/hooks/after_prepare/010_add_platform_cla

我是第一次尝试爱奥尼亚。我对iOS没有任何问题,但为Android构建演示应用程序会给我一个几乎没有信息的错误(见下文)。在我看来,问题可能出在Cordova附带的gradle配置文件上,但如果可以避免的话,我不认为Cordova编辑平台特定文件是一种良好的做法

[myApp]Bro? ionic build android Running command: /Users/x/Documents/Dev/myApp/hooks/after_prepare/010_add_platform_class.js /Users/x/Documents/Dev/myApp add to body class: platform-android Running command: /Users/x/Documents/Dev/myApp/platforms/android/cordova/build ANDROID_HOME=/Users/x/Library/Android/sdk JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home Running: /Users/x/Documents/Dev/myApp/platforms/android/gradlew cdvBuildDebug -b /Users/x/Documents/Dev/myApp/platforms/android/build.gradle -Dorg.gradle.daemon=true FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring root project 'android'. > A problem occurred configuring project ':CordovaLib'. > Failed to notify project evaluation listener. > java.lang.ExceptionInInitializerError (no error message) * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED [myApp]兄弟?爱奥尼亚机器人 运行命令:/Users/x/Documents/Dev/myApp/hooks/after\u prepare/010\u add\u platform\u class.js/Users/x/Documents/Dev/myApp 添加到body类:platformandroid 运行命令:/Users/x/Documents/Dev/myApp/platforms/android/cordova/build ANDROID_HOME=/Users/x/Library/ANDROID/sdk JAVA_HOME=/Library/JAVA/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/HOME 正在运行:/Users/x/Documents/Dev/myApp/platforms/android/gradlew cdvBuildDebug-b/Users/x/Documents/Dev/myApp/platforms/android/build.gradle-Dorg.gradle.daemon=true 失败:生成失败,出现异常。 *出了什么问题: 配置根项目“android”时出现问题。 >配置项目“:CordovaLib”时出现问题。 >未能通知项目评估侦听器。 >java.lang.ExceptionInInitializerError(无错误消息) *尝试: 使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。 构建失败
查看stacktrace,很明显我的javaxpath和XQuery库(Saxon)有问题。事实证明,自从从JDK 7迁移到JDK 8之后,我就没有更新过该库,而且JDK 8与我安装的版本不兼容。看起来Android构建使用了相同的插件来解析AndroidManifest.xml


简短回答-查看堆栈跟踪。也许这也与过时的Java库有关。

注意,完成此操作后,我仍然必须像sudo一样运行所有cordova/ionic命令,但仅适用于android。您可以按照链接进行操作