what variable sobreescribir que método metodo funciona does como anotacion java eclipse interface annotations syntax-error

java - variable - ¿Por qué Eclipse se queja de @Override en los métodos de interfaz?



sobreescribir variable java (10)

Al configurar que los proyectos IDE están configurados para usar un Java 6 JRE o superior a veces no elimina el error de eclipse. Para mí, un reinicio del Eclipe IDE me ayudó.

Tengo un proyecto existente que usa @Override en métodos que anulan los métodos de interfaz , en lugar de métodos de superclase. No puedo alterar esto en el código, pero me gustaría que Eclpse deje de quejarse sobre la anotación, ya que aún puedo compilar con Maven.

¿Cómo voy a deshabilitar este error?

Nota: Debido a los requisitos del proyecto, necesito compilar para Java 1.5.


El uso de la anotación @Override en métodos que implementan los declarados por una interfaz solo es válido desde Java 6 en adelante. Es un error en Java 5.

Asegúrese de que sus proyectos IDE estén configurados para usar Java 6 JRE, y que la "compatibilidad de origen" esté configurada en 1.6 o superior. Abra el cuadro de diálogo Ventana> Preferencias y busque Java> Compiler. Allí puede establecer el "nivel de cumplimiento del compilador" en 1.6.

Recuerda que Eclipse puede anular estas configuraciones globales para un proyecto específico, así que fíjate también en ellas.

Actualizar:

El error bajo Java 5 no es solo con Eclipse; el uso de javac directamente desde la línea de comando le dará el mismo error. No es válido el código fuente de Java 5.

Sin embargo, puede especificar la opción -target 1.5 en javac JDK 6, que producirá un archivo de clase de versión Java 5 a partir del código fuente de Java 6.


Entendí tu problema, cambia tu jdk de tu jdk a más de 1.5


Incluso después de cambiar la configuración de cumplimiento del compilador a 1.6 o 1.7 desde la pestaña de windows, luego prefertions, luego java, luego el compilador y establecer el cumplimiento del compilador, todavía tenía este problema. La idea es que tenemos que ir a la carpeta del proyecto, hacer clic con el botón derecho, Java y establecer el cumplimiento del compilador en 1.6 o superior. Esto funcionó para mí.


La configuración específica del proyecto puede estar habilitada. Seleccione su proyecto Project > Properties > Java Compiler , uncheck Enable project specific settings o cambie Jdk 1.6 y superior sin olvidar el JRE correspondiente.
En caso de que no funcione, elimine su proyecto de eclipse, elimine .settings folders .project , .classpath , .classpath . clean and build the project, import it back into eclipse and then reset your Java compiler. Clean and build your project clean and build the project, import it back into eclipse and then reset your Java compiler. Clean and build your project y eclipse. Funcionó para mí


Proyecto-> Propiedades-> compilador java->

Habilite la configuración específica del proyecto, si el cumplimiento del compilador, 1.6 genera archivos de clase y compatibilidad de origen, 1.5


Puede cambiar la configuración del compilador para aceptar la sintaxis de Java 6 pero generar salida de Java 5 (según recuerdo). Y establezca la "Compatibilidad de archivos de clase generada" un poco más baja si es necesario por su tiempo de ejecución. Actualización : revisé Eclipse, pero se queja si configuro la compatibilidad de fuente en 1.6 y la compatibilidad de clase en 1.5. Si no se permite 1.6, generalmente hago un comentario manual sobre las anotaciones ofensivas @Override en la fuente (lo que no ayuda a su caso).

Actualización2: si solo hace compilación manual, podría escribir un pequeño programa que copie el proyecto original en uno nuevo, elimine las anotaciones @Override de las fuentes Java y solo acceda a Clean project en Eclipse.


También puede probar Retroweaver para crear la versión de Java5 desde las clases de Java6.


Use Eclipse para buscar y reemplazar (eliminar) todas las instancias de "@Override". Luego, agregue las anulaciones que no son de interfaz usando "Limpiar".

Pasos:

  1. Seleccione los proyectos o carpetas que contienen sus archivos de origen.
  2. Vaya a "Buscar> Buscar ..." (Ctrl-H) para que aparezca el cuadro de diálogo Buscar.
  3. Vaya a la pestaña "Búsqueda de archivos".
  4. Ingrese "@Override" en "Con texto" y "* .java" en "Patrones de nombre de archivo". Haga clic en "Reemplazar ...", luego en "Aceptar" para eliminar todas las instancias de "@Override".
  5. Vaya a "Ventana> Preferencias> Java> Estilo de código> Limpiar" y cree un nuevo perfil.
  6. Edite el perfil y desmarque todo excepto "Código faltante> Agregar anotaciones faltantes> @Override". Asegúrese de que "Implementaciones de métodos de interfaz" esté desmarcada.
  7. Seleccione los proyectos o carpetas que contienen sus archivos de origen.
  8. Seleccione "Fuente> Limpiar ..." (Alt + Shift + s, luego u), luego "Finalizar" para volver a agregar las anulaciones que no son de interfaz.

Verifique también si el proyecto tiene faceta. La versión de Java puede ser anulada allí.