Android requiere un nivel de cumplimiento del compilador 5.0 o 6.0. Encontró '1.7' en su lugar. Utilice las herramientas de Android> Reparar propiedades del proyecto

286

¿Alguien tuvo un problema similar con esto? Importo un proyecto de Android y obtengo errores como

[2011-10-03 17:20:09 - Screen] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:55 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:59 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.

Recibí errores al eliminar todas las funciones anteriores de @Override. Tengo Windows 7 x64, jvm7 x64. ¿Alguien tiene idea de lo que está mal? (Hice Android Tools -> Fix Project Properties pero no ayudó)

Damir
fuente
¿Verificó la configuración de cumplimiento del compilador de Eclipse para el proyecto? Ejemplo
dmon el
3
Parece que el SDK de Android no reconoce 1.7 como Java7 (luego compatible con lo que necesita). Intente configurar la compatibilidad del proyecto en Java6 :)
helios

Respuestas:

448

Ese no es el problema, Jack. Android SDK no es x64, pero funciona bien con x64 jvm (y x64 eclipse IDE).

Como dijo helios, debe establecer la compatibilidad del proyecto en Java 5.0 o Java 6.0.

Para hacer eso, 2 opciones:

  1. Haga clic derecho en su proyecto y seleccione "Android Tools -> Fix Project Properties"(si esto no funciona, pruebe la segunda opción)
  2. Haga clic derecho en su proyecto y seleccione "Properties -> Java Compiler", marque "Habilitar configuraciones específicas del proyecto" y seleccione 1.5 o 1.6 en el cuadro de selección "Configuración de cumplimiento del compilador" .
Nitemare
fuente
26
No me ayudó :-(
lzap
1
En mi caso (estoy tratando de compilar la muestra de Android OpenFeint), la desactivación de "Habilitar configuraciones específicas del proyecto" funcionó en su lugar.
user642252
1
cuando uso la primera opción, el R.java del proyecto se eliminó automáticamente
Naresh Sharma
No use la primera opción, ya que establecerá el compilador en 1.5, que no es "lo suficientemente bueno" en la mayoría de los casos. El mejor enfoque es cambiar el nivel de cumplimiento del compilador para todo el espacio de trabajo yendo a Herramientas -> Preferencias -> Compilador Java y seleccione 1.6 del menú desplegable.
nikib3ro
3
Pero, ¿qué sucede si desea el Compilador 1.7 y aún así obtiene este error? ¿Cómo puedes arreglar eso?
Shervin Asgari
20
  1. Vaya a la carpeta del proyecto y haga clic derecho sobre ella; > properties ->marque la casilla de solo lectura y haga clic en Aceptar

  2. Haga clic derecho en su proyecto y seleccione "Android Tools -> Fix Project Properties"

  3. Haga clic derecho en su proyecto y seleccione "Properties -> Java Compiler", marque "Enable project specific settings"y seleccione 1.5 o 1.6 en el cuadro de selección "Configuración de cumplimiento del compilador". (prueba todos los niveles uno por uno por si acaso)

  4. Debajo Window -> Preferences -> Java -> Compiler, establezca el nivel de cumplimiento del compilador en 1.6 o 1.5.

Esperemos que solucione el problema.

Waqas Khalid
fuente
Probablemente respondió, pero en el sistema de archivos de Windows (la ubicación de la carpeta de su proyecto), haga clic con el botón derecho y establezca la casilla de verificación 'solo lectura' en desmarcada. Esto solucionó mi problema!
CodeMonkey
13

Recomendaría usar la versión x86 de jvm. Cuando obtuve mi nueva computadora portátil (x64), quería ir a x64 todo el camino (jvm, jdk, jre, eclipse, etc.). Pero una vez que terminé de configurar todo me di cuenta de que el SDK de Android no era x64, así que tuve problemas. Regrese a x86 jvm y debería estar bien.

EDITAR: 14/11/13

He visto alguna actividad reciente y pensé que podría elaborar un poco más.

No dije que no funcionaría con x64, solo recomendé usar x86.

Aquí hay una buena publicación sobre las ventajas / desventajas de x64 JDK. Beneficios de la plataforma Java de 64 bits

Proceso de pensamiento: ¿con qué fin? ¿Por qué estoy tratando de usar JDK de 64 bits? ¿Solo porque tengo un sistema operativo de 64 bits? ¿Necesito alguna de las características de JDK de 64 bits? ¿Hay alguna característica adicional en el JDK de 64 bits? ¿Por qué no se jugarán bien estos s ***? Joder, voy a 32 bits.

Jack
fuente
8

Haciendo Project-> lo Clean...arregló para mí.

Mi eclipse había dejado de funcionar, así que limpié el workspacedirectorio y después de ejecutar eclipse cuando importé el proyecto tuve este problema. Otras soluciones sugeridas aquí no funcionaron.

Caner
fuente
6

Para la mayoría de las personas que aún reciben el error después de corregir las propiedades del proyecto, probablemente instaló Java 7 SDK al configurar su entorno, pero actualmente no es compatible con el desarrollo de Android.

Como dice el mensaje de error, debería haber instalado Java 5.0 o 6.0, pero se encontró Java 7.

Si arregla las propiedades del proyecto sin instalar primero Java 5 o 6, verá el mismo error nuevamente.

  • Primero, asegúrese de tener instalado Java SDK 5 o 6, o instálelo.
  • Verifique que su variable de entorno (JAVA_HOME) apunte al SDK 5/6.

Y entonces:

  • Verifique que Eclipse esté usando SDK 5/6 por defecto (Window => Prefs. => Java => Compiler
  • Deshabilitar configuraciones específicas del proyecto (Propiedades del proyecto => Compilador Java)
  • Fix Project Properties

O

  • Deje Eclipse usando JDK 7 por defecto.
  • Habilitar configuraciones específicas del proyecto (Propiedades del proyecto => Compilador Java)
  • Seleccione Compiler Compliance 1.5 o 1.6 (Propiedades del proyecto => Compilador Java)
danielnavarro
fuente
3

Estoy de acuerdo con BMSAndroidDroid y Flo-Scheild-Bobby. Estaba haciendo un tutorial llamado DailyQuote y había usado la biblioteca Cordova. Luego cambié mi sistema operativo de Windows a Ubuntu e intenté importar proyectos a Eclipse, (estoy usando Eclipse Juno de 64 bits, en Ubuntu 12.04 64-bitOracle JDK 7. También instalé las librerías de Ubuntu de 32 bits, así que no tengo problemas con 64 y 32 bits), y obtuve el mismo problema.

Como sugiere Flo-Scheild-Bobby, abra la ruta de configuración de compilación y agregue los jar (s) nuevamente que agregó anteriormente. Luego elimine los enlaces jar antiguos y eso es todo.

JohnM
fuente
3

Solucioné este problema empleando los dos procedimientos de:

  1. En Eclipse -> menú 'Proyecto' -> 'Compilador Java' -> establezca 'Nivel de cumplimiento del compilador' = 1.6 marque 'Usar configuración de cumplimiento predeterminada' Establecer 'Compatibilidad de clase generada' = 1.6 Establecer 'Compatibilidad de origen' = 1.6

  2. Luego vaya al menú 'Windows' -> 'Preferencias' -> 'Java', expanda 'Java' -> 'Compilador' -> Establecer 'Nivel de cumplimiento del compilador' = 1.6

Sugerencia: la compatibilidad de origen debe ser igual o menor que el nivel de cumplimiento.

Emeka Eze
fuente
No use SO para promocionar su sitio web.
caiocpricci2
2

Sugeriría que verifique que los archivos jar estén incluidos correctamente en sus proyectos. Existe la posibilidad de que, en ausencia de archivos jar, el proyecto no se compile

BMSAndroidDroid
fuente
2

Como dijo BMSAndroidDroid, este problema puede deberse a una configuración de ruta de compilación incorrecta.

Si incluyó algunas bibliotecas en su ruta de compilación, mueva las bibliotecas, la ruta de compilación conservará las referencias incorrectas, no encontrará las bibliotecas durante la compilación y obtendrá un error.

Para solucionarlo, haga clic con el botón derecho en la carpeta del proyecto> ruta de compilación> configurar ruta de compilación Luego, eche un vistazo a la pestaña de la biblioteca y elimine las bibliotecas antiguas.

Flo Schild
fuente
2

En mi caso, un cambio de openjdk7 a openjdk6 ayudó. Luego cambié el nivel de cumplimiento a 1.6 y todo lo compilé bien.

Stas Stelle
fuente
1

Me encuentro con este problema porque mi debug.keystore ha caducado, así que eliminé el debug.keystore en la carpeta .android, y el eclipse regenerará un nuevo debug.keystore, luego arreglé

lynn8570
fuente
1

Siguiente funcionó para mí

Enable project-specific settings and set the compliance level to 1.6

Como puedes hacer eso?

En su Eclipse Package Explorer3er clic en su proyecto y seleccione properties. Se abrirá la ventana de propiedades. Seleccione Java Compileren el panel izquierdo de la ventana. Ahora Enable project specific settingsy configura el Complier compliance levela 1.6. Seleccione Applyy luego OK.

Aniket Thakur
fuente