No compatible con la versión 52.0 de major.minor en mi aplicación

126
Rafael Reyes 2016-03-15 05:01.

Estoy intentando compilar mi proyecto de Android y recibo este error

[INFO] Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
[INFO]  at java.lang.ClassLoader.defineClass1(Native Method)
[INFO]  at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
[INFO]  at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
[INFO]  at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
[INFO]  at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
[INFO]  at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[INFO]  at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
[INFO]  at java.security.AccessController.doPrivileged(Native Method)
[INFO]  at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
[INFO]  at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
[INFO]  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
[INFO]  at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
[INFO]  at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------

He estado leyendo en otra publicación que intentar compilar con Java 8 podría causar ese error pero no es mi caso, tengo la siguiente versión de Java:

java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu0.14.04.2)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

SO: Linux Mint (no tengo Java 8 instalado). Compilación: MAVEN

Puede alguien ayudarme con esto?

27 answers

236
Rudy Kurniawan 2016-03-16 19:21.

También enfrento este problema al hacer un nuevo proyecto desde Android Studio.

Pude resolver esto al degradar buildToolsVersion en la configuración de gradle de la aplicación: cambie la línea de {module-name} /build.gradle

buildToolsVersion "24.0.0 rc1"

a

buildToolsVersion "23.0.3"


@Editar:
En Android Studio 2.1, vaya a Archivo-> Estructura del proyecto-> Aplicación -> Versión de la herramienta de compilación. Cámbielo a 23.0.3

Realice el método anterior, solo cuando esté utilizando la versión 7 de Java y, por alguna razón, no desee actualizar a Java 8 todavía.

Espero que esto ayude

43
Febrianto Nugroho 2016-06-20 23:29.

Scripts de Gradle >> build.gradle (aplicación de módulo)

Cambie buildToolsVersion "24.0.0" por buildToolsVersion "23.0.3"

fuente: experiencia

31
Denis Kniazhev 2016-04-15 00:38.

Inicialmente había degradado buildToolsVersionde 24.0.0 rc3a 23.0.3, como se especifica en la respuesta de Rudy Kurniawan. Entonces he notado que tengo jdk 7 especificado en la configuración de mi proyecto. Lo cambié a jdk 8 y ahora las herramientas de compilación 24.0.0 rc3funcionan.

También es importante tener las opciones de compilación configuradas para java7:

android {
    ...
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}
14
testing 2016-10-06 01:34.

Instalé Android Studio junto con Xamarin Visual Studio (ya estaba instalado). Después de la instalación (SDK excluido, porque ya estaban instalados), inicié Android Studio y descargué, instalé y agregué los SDK faltantes (después de dar la ruta a la ubicación del SDK). Como resultado, recibí el mensaje de error en la compilación.

java.lang.UnsupportedClassVersionError: com / android / dx / command / Main: No admitido major.minor versión 52.0

Como solución lo instalé jdk-8u101-windows-i586.exesin JRE (porque ya estaba instalado). Antes probé la versión x64, pero desapareció ... Entonces tienes que cambiar la ubicación del Java Development Kit .

Esto se hace en Visual Studio haciendo clic en Herramientas> Opciones> Xamarin> Configuración de Android. Aquí puede navegar hasta la ubicación correcta. En mi caso lo fue C:\Program Files (x86)\Java\jdk1.8.0_101.

Finalmente, limpia tu proyecto y haz una nueva construcción :-)

8
Jorgesys 2016-08-05 07:38.

El problema especificó:

Excepción en el hilo "main" java.lang.UnsupportedClassVersionError: com / android / dx / command / Main: versión mayor.minor no admitida 52.

se produce cuando se declara dentro de build.gradle, buildToolsVersion 24y no tenemos instalado Java 8 que es necesario para esta versión . Para solucionar este problema tenemos que pasar buildToolsVersionde 24 a máximo 23:

Java 8 debe ser necesario en el futuro Android Studio, por lo que debemos comenzar a usar Java 8.

6
sotrh 2016-06-18 12:00.

Tuve el mismo problema con mi compilación IntelliJ Maven. Mi "solución" fue ir a las herramientas de compilación y eliminar la carpeta de herramientas de compilación 24.0.0. Lo encontré en el {android-sdk-location}/build-tools/directorio. Esta no es una solución a largo plazo, pero al menos debería hacer que su proyecto se desarrolle nuevamente. Actualizar a Java 8, como muchos han sugerido, será mejor a largo plazo.

5
user6661437 2016-08-01 16:29.

También enfrenté este problema al hacer un nuevo proyecto en eclipse.

  1. Abra su directorio de instalación de eclipse
  2. Abra el archivo eclipse.ini
  3. Modificar

    Dosgi.requiredJavaVersion=1.6 
    

    a

    Dosgi.requiredJavaVersion=1.7
    

Espero que esto ayude

5
Jay Sidri 2016-08-15 19:51.

Lo que nadie aquí está diciendo es que con Build Tools 24.0.0, se requiere Java 8 y la mayoría de la gente tiene 1.6 o 1.7.

Así que sí, configurar la herramienta de compilación en 23.xx "resolvería" el problema, pero la causa principal es la versión de Java en su sistema.

A largo plazo, es posible que desee actualizar su entorno de desarrollo para usar JDK8 para utilizar las nuevas mejoras de lenguaje y el compilador jack.

5
IgorGanapolsky 2016-12-03 04:07.

52 es el código para JDK 8. Puede verlo aquí: http://javarevisited.blogspot.com/2015/05/fixing-unsupported-majorminor-version.html . Entonces, Gradle espera que tenga JDK 8 como la versión predeterminada de Java en su máquina. Las versiones más recientes de Gradle para Android no funcionarán con Java 7.

La solución es simple: haga de Java 8 la versión jdk predeterminada en su máquina.

4
coarist 2016-04-13 00:57.

Estoy en Android Studio 2.0 y tengo el mismo problema. La solución proporcionada por Rudy Kurniawan resolvió este problema. El archivo afectado se puede localizar mediante:

"Proyecto" -> "Android" -> "Gradle Scripts" -> "build.gradle (Módulo: aplicación)"

El panel " Proyecto " está predeterminado a la izquierda. Para encontrarlo, inspeccione el nombre de las pestañas laterales, haga clic en él y luego use el cuadro desplegable superior para acceder a " Android ". Expanda el árbol en el panel para encontrar el archivo de destino. Haga doble clic en él para editar.

4
Habel Philip 2016-06-15 20:33.

Perdón por la respuesta tardía. Espero que ayude a alguien más

Este problema está relacionado con su SDK, no con su JDK. Puede comprobar la información de su versión en

Ayuda> Acerca de> Mostrar detalles

Obtendrás algo como

Versión de Xamarin.Android: 6.0.2.1 (Starter Edition) SDK de Android: X: \ Android \ android-sdk

Versiones de Android compatibles:

4.0.3 (nivel de API 15)

4.4 (API nivel 19)

6.0 (nivel de API 23)

Versión de las herramientas del SDK: 24.4.1

Versión de las herramientas de la plataforma SDK: 23.0.1

Versión de las herramientas de compilación del SDK: 24 rc2

SDK de Java: X: \ Archivos de programa (x86) \ Java \ jdk1.7.0_71

versión de Java "1.7.0_71"

Entorno de ejecución Java (TM) SE (compilación 1.7.0_71-b14)

VM de cliente Java HotSpot (TM) (compilación 24.71-b01, modo mixto, uso compartido)

Si está utilizando herramientas de vista previa para la construcción, obtendrá errores similares en todas partes.

¿Qué hacer ahora?

ir

Herramientas -> Administrador de SDK

  1. Seleccione todos los elementos en los canales de vista previa, incluso Android SDK build toolscon rev 24rc2o 24rc4(más reciente)

  2. Haga clic en Delete 'n' packages

Cómo desactivar el canal de vista previa

  1. En el administrador de SDK, seleccione

    Herramientas> opciones

  2. Desmarcar Enable preview tools

Y qué

Volver a su código Limpiar todo y reconstruir (en casos raros, debe seleccionar herramientas de construcción en la página de configuración del proyecto)

2
haithem 2016-05-20 01:43.

Gracias a todos por la solución.

Podría resolver mi mismo problema usando la siguiente solución.

En mi proyecto, agregué jar que se crearon en Java8. Y mi proyecto se refería a JRE 7. Cuando cambié el proyecto JRE a 8. Mi problema se resolvió.

Pasos: En eclipse, haga clic con el botón derecho en el nombre del proyecto en el explorador del proyecto> ruta de compilación> Bibliotecas> haga clic en la versión jre> haga clic en editar> JRE instalado> agregar> máquina virtual estándar> seleccione la ruta de acceso de inicio de JRE (la ruta debe ser localePath \ java \ jdk1 .8.0_25 \ jre)> proporcione el nombre> guardar> seleccione el mismo JRE para el proyecto> finalizar> ok Actualizar / compilar el proyecto una vez> intente ejecutar su archivo java. deberia de funcionar.

2
k3b 2016-09-27 09:43.

¿Recibe este mensaje de error en el servidor de compilación de travis?

Arreglé mi compilación de travis con buildToolsVersion "24.0.2" usando esto

# travis build 
language: android

jdk:
  - oraclejdk8

android:
  components:
    - tools
    - build-tools-24.0.2
    - android-23

    - add-on
    - extra

script:
  - jdk_switcher use oraclejdk8
  - ./gradlew assemble
2
Hedego 2017-03-25 23:38.

En mi caso, el jdk predeterminado era 1.7, luego lo cambié a 1.8 navegando hasta la carpeta exacta donde se encuentra el jdk actualizado.

1
Gladys Sanchez 2016-05-19 02:45.

Tuve el mismo problema e intenté cambiar la versión, a veces es para la versión de Android Studio en Proyecto> Gradle Scripts> build.gradle (Módulo: aplicación) puedes cambiar la versión. Por ejemplo:

android {
    compileSdkVersion **23**
    buildToolsVersion **"23.0.3"**

    defaultConfig {
        applicationId "com.example.android.myapplication"
        minSdkVersion **19**
        targetSdkVersion **23**
        versionCode **1**
        versionName **"1.0"**
    }
1
cristianorbs 2016-03-15 05:14.

De No admitido major.minor versión 52.0 [duplicado] pregunta.

Puede intentar cambiar su nivel de compilador de nuevo a 1.7 en el IDE que está usando.

  • Si está en Eclipse, vaya a Windows ---> Prefences, luego seleccione Java y expándalo, luego seleccione Compilador y cambie el nivel de cumplimiento a 1.7.
  • Si está en Android Studio, puede agregar esto a su build.gradle

    android {
        compileSdkVersion 19
        buildToolsVersion "19.0.0"
    
        defaultConfig {
            minSdkVersion 7
            targetSdkVersion 19
        }
    
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_7
            targetCompatibility JavaVersion.VERSION_1_7
        }
    }
    

Si esto no ayuda, intente verificar la respuesta de otros en el enlace mencionado anteriormente y háganos saber qué le ayudó.

1
Swathin 2016-07-11 04:41.

Tus herramientas de compilación de Android no están instaladas correctamente. Intente instalar alguna otra versión de las herramientas de compilación y proporcione esa versión en el archivo gradle. o puedes ir a este directorio

C: \ Users \\ AppData \ Local \ Android \ sdk \ build-tools

y ver qué herramientas de compilación están instaladas. Intente cambiar la versión de la herramienta de compilación en el archivo gradle y compile la aplicación para ver si está funcionando.

Tenía las versiones 22.0.1, 23.0.02 y 24.0.0 de las herramientas de compilación y solo funcionaba la versión anterior 22.0.1.

fuente: lo probé yo mismo y funcionó para mí.

1
GodOnScooter 2016-08-25 11:25.

Este problema se debe al hecho de que la versión de la herramienta de compilación y el JDK no funcionarán juntos. Estaba usando JDK versión 7 con la herramienta de compilación 24.0.1. Por supuesto, reducir la versión de la herramienta de compilación puede solucionar el problema, pero no es una solución real, ya que actualizar sus herramientas de compilación en el futuro lo volverá a romper.

Debe asegurarse de que la versión de la herramienta de compilación y el JDK funcionen juntos. Actualicé mi herramienta de compilación a la última (24.0.1) e instalé jdk8. Asegúrese de configurar su JAVA_HOME a la última versión y luego intente una compilación limpia.

1
Andrea Gherardi 2016-09-03 03:56.

Tuve el mismo problema fuera de Android Studio, al intentar compilar para Cordova usando el sdk desde la línea de comando (cordova build android).

La solución proporcionada por Rudy también funciona en este caso. Simplemente no degrada la versión de Build Tools de Android Studio, sino que lo hace usando la interfaz de usuario del administrador sdk de Android.

0
Mike Playle 2016-04-04 12:35.

Acabo de encontrar este problema.

La reversión de las versiones "Preview Channel" de las herramientas del SDK y las herramientas de compilación a la última versión estable lo solucionó.

0
ericn 2016-08-14 22:01.

Cambiar com.android.tools.build:gradle:2.2.0-beta1para com.android.tools.build:gradle:2.1.2arreglarlo para mí.

Mi versión de Android Studio es 2.1.2, quizás por eso

0
PyDevSRS 2016-10-01 04:44.

La solución más simple es que debe actualizar su JDK a la última versión. Porque Cordova solo admite el último JDK.

1 . En primer lugar, debe actualizar su SDK de Android. Entonces,

2. Si no puede actualizar a través de su terminal, vaya a su centro de software de Linux destro y busque el más reciente (cuál desea instalar) e instálelo.

Luego, ejecute nuevamente Cordova build .

Resolverá el problema.

En mi caso funcionó.

0
IgorGanapolsky 2016-11-24 09:25.

Debe ingresar al directorio de instalación de su SDK y asegurarse de que el subdirectorio / build-tools coincida con el buildToolsVersiondel archivo build.gradle de su aplicación:

0
genomma 2016-12-11 04:33.

Compruebe que tiene instalada la última versión del SDK en C:\Program Files\JavaoC:\Program Files (x86)\Java

Luego vaya a VS2015 y siga las herramientas de ruta - opciones - Xamarin - configuración de Android y en la sección Ubicación de JDK seleccione cambiar y vaya a buscar la versión que tiene x64 o x32.

0
mate.gwozdz 2017-01-14 04:00.

Estoy en Córdoba, esto es lo que hice:

- cambie el nombre de su proyecto de Android, para que haya espacio para uno nuevo
- actualice el kit de desarrollo JAVA a 1.8 (el último en el momento de escribir esto)
- ejecutecordova platform add android

Debería funcionar sin problemas ahora. El hash de su aplicación cambiará, por lo que si lo está usando fe para el inicio de sesión de facbeook, deberá actualizarlo

0
rndStr 2017-01-31 23:33.

Había tenido este problema durante demasiado tiempo (SO, etc.no había ayudado) y solo lo resolví (usando sdk 25).

-El archivo local.properties proguard.dir var no se aplicaba con ant; Especifiqué 5.3.2, pero una llamada de línea de comando y una compilación de exportación firmada (eclipse) usaban 4.7, desde el directorio sdk (solo 5+ son compatibles con java 8)

Mi solución fue reemplazar los frascos de proguard (directorio android-sdk / tools / proguard / libs) en el sdk con una versión actual (5+) de proguard.

0
Rachit Murarka 2017-04-21 23:17.

El error unsupported-major-minor-version puede deberse a una versión de JDK no compatible. Actualice JDK, vaya a Configuración del módulo y cambie la ruta de JDK a la nueva. En la mayoría de los casos, corrige el error.

Related questions

MORE COOL STUFF

La estrella de HGTV, Christina Hall, revela que tiene 'envenenamiento por mercurio y plomo' probablemente por voltear 'casas asquerosas'

La estrella de HGTV, Christina Hall, revela que tiene 'envenenamiento por mercurio y plomo' probablemente por voltear 'casas asquerosas'

La estrella de HGTV, Christina Hall, revela que le diagnosticaron envenenamiento por mercurio y plomo, probablemente debido a su trabajo como manipuladora de casas.

La estrella de 'Love Is Blind' Brennon Lemieux responde a los cargos de violencia doméstica

La estrella de 'Love Is Blind' Brennon Lemieux responde a los cargos de violencia doméstica

Recientemente salió a la luz un informe policial que acusa a la estrella de 'Love Is Blind', Brennon, de violencia doméstica. Ahora, Brennon ha respondido a los reclamos.

Wynonna Judd se dio cuenta de que ahora es la matriarca de la familia Judd en un momento festivo de pánico

Wynonna Judd se dio cuenta de que ahora es la matriarca de la familia Judd en un momento festivo de pánico

Conozca cómo Wynonna Judd se dio cuenta de que ahora es la matriarca de la familia mientras organizaba la primera celebración de Acción de Gracias desde que murió su madre, Naomi Judd.

Experto en lenguaje corporal explica los 'paralelos' entre Kate Middleton y la princesa Diana

Experto en lenguaje corporal explica los 'paralelos' entre Kate Middleton y la princesa Diana

Descubra por qué un destacado experto en lenguaje corporal cree que es fácil trazar "tales paralelismos" entre la princesa Kate Middleton y la princesa Diana.

Los láseres arrojan luz sobre por qué necesita cerrar la tapa antes de descargar

Los láseres arrojan luz sobre por qué necesita cerrar la tapa antes de descargar

Los inodoros arrojan columnas de aerosol invisibles con cada descarga. ¿Como sabemos? La prueba fue capturada por láseres de alta potencia.

The Secrets of Airline Travel Quiz

The Secrets of Airline Travel Quiz

Air travel is far more than getting from point A to point B safely. How much do you know about the million little details that go into flying on airplanes?

Where in the World Are You? Take our GeoGuesser Quiz

Where in the World Are You? Take our GeoGuesser Quiz

The world is a huge place, yet some GeoGuessr players know locations in mere seconds. Are you one of GeoGuessr's gifted elite? Take our quiz to find out!

¿Caduca el repelente de insectos?

¿Caduca el repelente de insectos?

¿Sigue siendo efectivo ese lote de repelente de insectos que te quedó del verano pasado? Si es así, ¿por cuánto tiempo?

Se revela la estatua de Godzilla más nueva de Tokio

Se revela la estatua de Godzilla más nueva de Tokio

Anteriormente, Kotaku informó que un hotel Godzilla se estaba abriendo en Tokio este abril. Junto al hotel, estaba programada la aparición de una enorme cabeza de 'Zilla, pero todo lo que hemos visto fueron imágenes conceptuales computarizadas.

El alcalde de Chicago realmente quiere que Elon Musk perfore un túnel debajo de la ciudad

El alcalde de Chicago realmente quiere que Elon Musk perfore un túnel debajo de la ciudad

Foto: Getty Desde que lanzó The Boring Company hace un año, Elon Musk ha mencionado varios sitios de construcción posibles para el negocio de perforación de túneles y ha descartado una vaga referencia a una aprobación gubernamental "verbal" para un túnel Hyperloop que conecta la ciudad de Nueva York y Washington. , CC. Pero ahora sabemos que al menos un alcalde quiere que Musk perfore un agujero debajo de su ciudad.

Ponle una tapa. En realidad, ponle una tapa a todo. Consigue 12 tapas de cocina elásticas de silicona por $14. [Exclusivo]

Ponle una tapa. En realidad, ponle una tapa a todo. Consigue 12 tapas de cocina elásticas de silicona por $14. [Exclusivo]

Tapas elásticas de silicona de Tomorrow's Kitchen, paquete de 12 | $14 | Amazonas | Código promocional 20OFFKINJALids son básicamente los calcetines de la cocina; siempre perdiéndose, dejando contenedores huérfanos que nunca podrán volver a cerrarse. Pero, ¿y si sus tapas pudieran estirarse y adaptarse a todos los recipientes, ollas, sartenes e incluso frutas en rodajas grandes que sobran? Nunca más tendrás que preocuparte por perder esa tapa tan específica.

Cuéntanos tus mejores trucos de Washington, DC

Cuéntanos tus mejores trucos de Washington, DC

Hemos pirateado algunas ciudades industriales en esta columna, como Los Ángeles y Las Vegas. Ahora es el momento de una ciudad militar-industrial-compleja.

Patinaje artístico de EE. UU. 'frustrado' por falta de decisión final en evento por equipos, pide una decisión justa

Patinaje artístico de EE. UU. 'frustrado' por falta de decisión final en evento por equipos, pide una decisión justa

El equipo está a la espera de las medallas que ganó en los Juegos Olímpicos de Invierno de 2022 en Beijing, ya que se está resolviendo un caso de dopaje que involucra a la patinadora artística rusa Kamila Valieva.

Los compradores de Amazon dicen que duermen 'como un bebé mimado' gracias a estas fundas de almohada de seda que cuestan tan solo $ 10

Los compradores de Amazon dicen que duermen 'como un bebé mimado' gracias a estas fundas de almohada de seda que cuestan tan solo $ 10

Miles de compradores de Amazon recomiendan la funda de almohada de seda Mulberry, y está a la venta en este momento. La funda de almohada de seda viene en varios colores y ayuda a mantener el cabello suave y la piel clara. Compre las fundas de almohada de seda mientras tienen hasta un 46 por ciento de descuento en Amazon

Se busca al corredor de los Bengals Joe Mixon por orden de arresto emitida por presuntamente apuntar con un arma de fuego a una mujer

Se busca al corredor de los Bengals Joe Mixon por orden de arresto emitida por presuntamente apuntar con un arma de fuego a una mujer

El jueves se presentó una denuncia de delito menor amenazante agravado contra Joe Mixon.

Profesor de la Universidad de Purdue arrestado por presuntamente traficar metanfetamina y proponer favores sexuales a mujeres

Profesor de la Universidad de Purdue arrestado por presuntamente traficar metanfetamina y proponer favores sexuales a mujeres

El Departamento de Policía de Lafayette comenzó a investigar a un profesor de la Universidad de Purdue en diciembre después de recibir varias denuncias de un "hombre sospechoso que se acercaba a una mujer".

Concept Drift: el mundo está cambiando demasiado rápido para la IA

Concept Drift: el mundo está cambiando demasiado rápido para la IA

Al igual que el mundo que nos rodea, el lenguaje siempre está cambiando. Mientras que en eras anteriores los cambios en el idioma ocurrían durante años o incluso décadas, ahora pueden ocurrir en cuestión de días o incluso horas.

India me está pateando el culo

India me está pateando el culo

Estoy de vuelta por primera vez en seis años. No puedo decirte cuánto tiempo he estado esperando esto.

ℝ

“And a river went out of Eden to water the garden, and from thence it was parted and became into four heads” Genesis 2:10. ? The heart is located in the middle of the thoracic cavity, pointing eastward.

¿Merrick Garland le ha fallado a Estados Unidos?

Es más de la mitad de la presidencia de Biden. ¿Qué está esperando Merrick Garland?

¿Merrick Garland le ha fallado a Estados Unidos?

Creo, un poco tarde en la vida, en dar oportunidades a la gente. Generosamente.

Language