La verdad es que llevaba tiempo sin programar en Android, pero hoy me vuelto a poner manos a la obra, para traeros en unos días una pequeña sorpresa, que espero os guste, el caso es que me he encontrado con el siguiente error:
Error:java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
Esto ocurre sin tener un error en nuestro código (al menos a priori) y al intentar ejecutar nuestra app, en la consola de mensajes podemos ver algo similar a lo siguiente:
Error:java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
Error: at java.lang.ClassLoader.defineClass1(Native Method)
Error: at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
Error: at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
Error: at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
Error: at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
Error: at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
Error: at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
Error: at java.security.AccessController.doPrivileged(Native Method)
Error: at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
Error: at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
Error: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
Error: at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
Error: at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Aunque aquí lo mas interesante es la primera linea ya que es la que ocasiona todo lo demás, si nos fijamos al final del mensaje habla de la versión 52.0, puede que te preguntes que es eso, pues es la versión de Java, aquí os dejo un listado de algunas de ellas:
- J2SE 8 = 52
- J2SE 7 = 51
- J2SE 6.0 = 50
- J2SE 5.0 = 49
- JDK 1.4 = 48
- JDK 1.3 = 47
- JDK 1.2 = 46
- JDK 1.1 = 45
Por lo que para solucionarlo lo primero que debemos hacer es descargarnos el JDK de la version 8 de Java, si usas Windows X64 te pongo el enlace directo http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-windows-x64.exe Son unos 180Mb por lo que no te impacientes que no tardará demasiado.
El siguiente paso es configurar nuestro proyecto para que utilice el JDK deseado, para ello iremos a File => Project Structure
Project Structure" /> Project Structure" title="Error: Unsupported major.minor version 52.0" /> Project Structure" srcset="http://www.todo-android.gratis/wp-content/uploads/2016/04/File-Project-Structure-209x300.jpg 209w, http://www.todo-android.gratis/wp-content/uploads/2016/04/File-Project-Structure-200x287.jpg 200w, http://www.todo-android.gratis/wp-content/uploads/2016/04/File-Project-Structure.jpg 270w" class="aligncenter size-medium wp-image-2777" />
Una vez en el modal que se nos abre, iremos al text central en donde nos deja seleccionar el JDK
Daremos en los 3 puntitos y seleccionaremos la ubicación de nuestro JDK
Un par de Ok, aceptar y listo ya podemos correr nuestro proyecto con éxito.
Fuente: http://stackoverflow.com/questions/35910550/problems-after-installing-java-8
Relacionado
Error: Lo sentimos la aplicación Google Play services se detuvo
Error – Conversion to Dalvik format failed: Unable to execute dex: Java heap space
Restaurar al estado de fabrica del Samsung Galaxy
Como instalar Android 5, Lollipop y actualizar nuestras app
Alimenta Sonrisas de Danone
Angry Birds 2, rompe records