Xamarin, Xamarin.Forms

Error { Unsupported class version number [52.0] (maximum 51.0, Java 1.7) }


El otro día al querer compilar un proyecto de Android de una aplicación construida en Xamarin.Forms me apareció el siguiente error, lo que indica una incompatibilidad de versión de Java:

Error Unsupported class version number 52

Por ende revise que los SDK, JDK y el NDK estuviesen al día y todo bien, entonces no era eso, al buscar en Internet me encontré con una solución:

Simplemente hay que instalar Java 1.8 el cual podemos descargar desde aquí.

Pero al parecer no era la versión de Java, si no que en el proyecto estaba habilitado el Muti-Dex y al parecer, siempre que la opción Multidex o Proguard estén habilitadas en un proyecto Xamarin.Android 7.0 (usando Java JDK 1.8) aparecerá el error antes mencionado.

enableMultiDex

El paquete Proguard incluido en el SDK de Android (<sdk-folder / tools / proguard / lib) no se ha actualizado desde 2011, ya que Proguard ahora es manejado por el complemento Gradle de Android Studio, por lo tanto esta versión desactualizada de Proguard no es compatible con Java 8.

¿Como funciona?

Parece que el Script mainDexClasses.bat en las herramientas de compilación del SDK de Android llama a este paquete Proguard.jar (desactualizado) y por lo tanto se rompe cada vez que se quiere utilizar para manejar proyectos que utilizan Java 8 (por ejemplo, proyectos Xamarin.Android 7.0)

Una solución temporal es descargar la última versión de Proguard  y reemplazar la carpeta tools / proguard / lib de Android por la carpeta lib dentro de la última versión de Proguard.

Captura de pantalla (229)

Por ultimo solo es necesario borrar las carpetas bin y obj de nuestro proyecto de Android, realizar un “Clean Solution” y volver a compilar.

Hasta la próxima!.

Anuncios

1 comentario en “Error { Unsupported class version number [52.0] (maximum 51.0, Java 1.7) }”

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s