Error: compileSdkVersion android-21 requiere compilar con JDK 7

106

Durante la compilación Error:compileSdkVersion android-21 requires compiling with JDK 7, aparece el error que indica que se requiere una versión más reciente de JDK.

Estoy ejecutando OS X Yosemite con Android Studio v0.8.14

Cosas que revisé:

  1. Versión de Java:

java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

  1. Dentro de la carpeta JavaVirtualMachine solo puedo ver la 1.6.0.jdkcarpeta, no puedo encontrar ninguna otra carpeta.

  2. ¡Intenté reinstalar JDk 8 y 7!

No puedo encontrar la ubicación de la carpeta de jvm 1.8, ni idea de cómo puedo solucionarlo.

Arjun Komath
fuente
Estoy teniendo el mismo problema. ¿Has encontrado una solución a esto?
gsueagle2008
@EricCumbee El uso de Jdk 7 como se muestra a continuación resolvió el problema.
Arjun Komath
4
Es absurdo que esta sea la primera experiencia.
Andy

Respuestas:

224

La solución exacta para este problema (usuarios de Android Studio en Mac)

Si ya ha actualizado a Java 8, tenga en cuenta que la ubicación de JDK ahora se encuentra dentro en /Library/Javacomparación con la ubicación de Java 6 /System/Library/Java. Así que para solucionar este problema, haga clic en el botón derecho en la Project folder> Project Structure>SDK Location.

Luego cambie la ubicación de JDK a

/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

Si ha instalado una versión de JDK diferente (que no sea Java 8), averigüe la ruta usando el java_homescript primero y use la salida. Solo corre,

/usr/libexec/java_home 
Sebastián Subin
fuente
10
Gracias @Subin para Android studio 1.0.1 Ubicación del SDK ubicada en File > Project Structureo simplemente Command + ;
presione
1
Respuesta perfecta para los usuarios de Android Studio .. Me salvó
reidisaki
la ruta mencionada a continuación funcionó para mí /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home
Teja Swaroop
2
En serio, seguí mirando mi ubicación y pensé que estaba bien, pero seguí viendo jdk1.6 hasta que me di cuenta de lo que querías decir con asegurarte de que estás en / Library / Java en lugar de / System / Library / Java, donde encontré fácilmente el jdk1. 8 para llegar a Contenidos / Inicio y boom, ahora Android Studio funciona sin errores constantes. ¡Eres un santo!
ColossalChris
1
¡Esto también funciona para Windows! Simplemente apunte a la instalación de JDK. Ejemplo:C:\Program Files\Java\jdk1.8.0_51
ADTC
29

En realidad, acabo de encontrar la solución: JDK 7 está en /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home.

eso hizo que funcionara para mí. Oracle Docs sobre dónde está instalado JDK7

gsueagle2008
fuente
2
¡No puedo ver esta carpeta! el mío muestra solo esta carpeta1.6.0.jdk
Arjun Komath
No recuerdo dónde estaba buscando Android Studio inicialmente, pero la carpeta 1.7 JDK no estaba en el mismo árbol de directorios que 1.6.0jdk.
gsueagle2008
6
@Arjun tiene la misma confusión que la tuya. Pero luego me di cuenta de que el directorio "Java" de JDK 7 está ubicado en realidad en /Library/Javalugar de /System/Library/Javaseparado de mi JDK 6
akhy
Entonces, en un lenguaje sencillo, ¿qué hiciste realmente para solucionar el problema?
JGallardo
{ROOT} /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/
gsueagle2008
10

Tengo una solucion También me pasó a mí y busqué mucho en Google, pero todo lo que obtuve fueron pistas. Muchas pistas. Y se me ocurrió una solución segura.

Esto se debe a que la computadora no tiene JDK 7 (o superior) instalado. El directorio JDK en AS / Configuration puede apuntar a JDK6. (Ese Sistema / Biblioteca / ...)

Todo lo que necesitas hacer es:

  1. Descargue el JDK más reciente.
  2. Instalarlo.
  3. Apunte Android Studio / Configure / Project Defaults / Project Structure / (JDK Location :) a / Library / Java / JavaVirtualMachines / jdk1.8.0_25.jdk / Contents / Home

El texto resaltado en negrita y cursiva puede diferir, por lo que se recomienda que lo explore. Espero que esto ayude. Pasé un día entero metiéndome la pata con Gradle, Android Studio. Codificación feliz.

TheOnlyAnil
fuente
7

Encontré que las respuestas de Eric y Subin combinadas resolvieron mi problema:

es decir, necesita configurar java JDK a la respuesta de Eric (suponiendo que esté usando JDK 7):

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home.

El error que cometí fue que intenté seleccionar el directorio jdk1.7.0_71.jdk y seguía recibiendo el mensaje de error "Por favor, elija un directorio JDK válido".

Estaba trabajando en el formato utilizado anteriormente para JDK 6 :( - Funcionó cuando le di la ruta completa hasta Contenido / Inicio.

La respuesta de Subin le dice cómo encontrar la ubicación de su JDK, que puede ser diferente según lo que esté tratando de hacer.

¡Gracias Eric y Subin!

usuario2155964
fuente
3

Estoy compartiendo esto porque quiero ayudar a aquellos que encontraron esta pregunta cuando buscaron el error en Google. La mayoría de las otras "respuestas" en Internet consumían mucho tiempo. Siga a continuación antes de perder tanto tiempo como yo.


Lo que hice fue descargar JDK 7

Luego cambie la configuración del jdk a 1.7.0

ingrese la descripción de la imagen aquí

JGallardo
fuente
3

Yo también he tenido este problema. Hasta ahora no puedo encontrar una solución, así que he recurrido a cambiar la versión máxima del SDK a 20, que funciona con JDK6.

En cuanto a la ubicación del archivo, en lugar de Android Studio asumiendo que debería estar en / System / Library / Java / JavaVirtualMachines / Insert JDK version / Contents / Home.

En realidad, mi JDK se instala en / Library / Java / JavaVirtualMachines / JDK Version Here / Contents / Home.

Intentar seleccionar un JDK en el directorio real donde está instalado hace que Android Studio diga que necesito seleccionar una ubicación JDK válida. Por ahora no puedo encontrar una solución, así que como dije anteriormente, he recurrido a cambiar la versión máxima del SDK a 20 en lugar de 21 y permanecerá así hasta que más personas sufran el error para que Google lo solucione. O hasta que se publique una solución real en línea en lugar de 101 formas de que no funcione.

Espero que esto ayude por ahora, no es realmente una solución / respuesta, pero es una solución que funciona para mí, por el momento.

Leccles1
fuente
0

si solo tiene la carpeta 1.6.0.jdk, vaya a este enlace y descargue e instale jdk 1.7. luego encuentra tu carpeta java en esta ruta

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
picadillo
fuente
0

Las soluciones de este hilo no son válidas para el mismo error en Android Studio 1.4. El menú de preferencias, por ejemplo, desapareció. A continuación se muestra la solución para Android Studio 1.4 que se ejecuta en Ubuntu 14.04.

Para resolver en Ubuntu 14.04+ y Android Studio 1.4+, debe ir a

Archivo -> Otras configuraciones -> Configuración predeterminada -> Compilación, ejecución, implementación -> Compilador -> Compilador de Java -> Versión de código de bytes del proyecto

Este menú desplegable estará vacío de forma predeterminada.

Configure su JDK preferido, en el caso de la captura de pantalla a continuación, 1.8.

Captura de pantalla de Android SDK

Voila, tu proyecto se compilará.

barnhillec
fuente
0
  1. Descargue desde aquí el último JDK.
  2. Abra la herramienta de línea de comandos.
  3. Copie y pegue la siguiente línea en su herramienta de línea de comando y presione retorno.

/ usr / libexec / java_home

  1. Copie la salida de este comando.
  2. Regrese a su proyecto de Android y navegue como se muestra a continuación

Archivo -> Estructura del proyecto -> Ubicación de JDK

edite (haga clic en el cuadrado con tres puntos) la ubicación del JDK (segundo en la imagen) y pegue la salida de la herramienta de línea de comandos allí.

ingrese la descripción de la imagen aquí He recopilado estas instrucciones con MacBook Pro.

usuario2511630
fuente