[英]Cordova CLI build Android fails with exception Unsupported major.minor version
I am trying to build an Android app using Cordova CLI as 我正在尝试使用Cordova CLI构建Android应用程序
cordova build android
However, the build fails with the following exception 但是,构建失败,但出现以下异常
Error: cmd: Command failed with exit code 1 Error output:
java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Exception in thread "main"
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Exception in thread "main"
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1
How can I fix this issue? 如何解决此问题? I am using Java Version 1.7 and Android Studio v2.2.3 and have android-23 in sdk folder.
我正在使用Java版本1.7和Android Studio v2.2.3,并且在sdk文件夹中有android-23。
There is issue in Java and android version. Java和android版本存在问题。 Please reduce your Java version.
请降低您的Java版本。 From Java 8 to minor version.
从Java 8到次要版本。
Java 7 or higher is required if you are targeting Android 5.0 and higher. 如果您定位的是Android 5.0或更高版本,则需要Java 7或更高版本。 This is from android official page.
这是从android官方页面。
Before you set up Android Studio, be sure you have installed JDK 6 or higher (the JRE alone is not sufficient)—JDK 7 is required when developing for Android 5.0 and higher.
在设置Android Studio之前,请确保已安装JDK 6或更高版本(仅JRE不够)—为Android 5.0或更高版本进行开发时需要JDK 7。 To check if you have JDK installed (and which version), open a terminal and type javac -version.
要检查是否已安装JDK(以及哪个版本),请打开终端并输入javac -version。 If the JDK is not available or the version is lower than 6, go download JDK.
如果JDK不可用或版本低于6,请下载JDK。
You are trying to run a class compiled using Java 1.8 compiler into a lower JRE version eg JRE 1.7 or JRE 1.6. 您试图将使用Java 1.8编译器编译的类运行到较低的JRE版本,例如JRE 1.7或JRE 1.6。 Your output shows that youre not using Java 1.8
您的输出显示您未使用Java 1.8
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1
Process 'comman`enter code here`d 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' <--------
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.