Pregunta 'Debe anular los errores de un método de superclase' después de importar un proyecto en Eclipse


Cada vez que tengo que volver a importar mis proyectos en Eclipse (si reinstalé Eclipse, o cambié la ubicación de los proyectos), casi todos de mis métodos reemplazados no están formateados correctamente, causando el error The method must override a superclass method.

Cabe mencionar que esto es con proyectos de Android: por alguna razón, los valores de los argumentos del método no siempre están llenos, así que tengo que rellenarlos manualmente. Por ejemplo:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //These arguments have their correct names
    public void onCreateContextMenu(ContextMenu menu, View v, 
                                    ContextMenuInfo menuInfo) {                 
    }

});

se poblará inicialmente así:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //This methods arguments were not automatically provided    
    public void onCreateContextMenu(ContextMenu arg1, View arg2,
                                    ContextMenuInfo arg3) {
    }

});

Lo extraño es que si elimino mi código y hago que Eclipse recree automáticamente el método, usa los mismos nombres de argumento que ya tenía, así que no sé dónde está el problema, aparte de eso, formateando automáticamente el método para yo.

Esto se convierte en un dolor tener que volver a crear manualmente TODOS mis métodos reemplazados a mano. Si alguien puede explicar por qué sucede esto o cómo solucionarlo ... estaría muy feliz.

Tal vez se deba a la forma en que estoy formateando los métodos, que están dentro de un argumento de otro método.


1126
2017-11-05 03:17


origen


Respuestas:


Eclipse está predeterminado en Java 1.5 y tiene clases que implementan métodos de interfaz (que en Java 1.6 se pueden anotar con @Override, pero en Java 1.5 solo se puede aplicar a métodos que reemplazan un método de superclase).

Vaya a las preferencias de su proyecto / IDE y configure el nivel del compilador de Java en 1.6 y también asegúrese de seleccionar JRE 1.6 para ejecutar su programa desde Eclipse.


1383
2017-11-05 03:33



Con Eclipse Galileo vaya a Eclipse -> elemento de menú Preferencias, luego seleccione Java y compilador en el cuadro de diálogo.

Ahora aún puede mostrar el nivel de cumplimiento del compilador en 1.6, sin embargo, aún se ve este problema. Entonces, ahora selecciona el enlace "Configurar ajustes específicos del proyecto ..."y allí verá que el proyecto está configurado en 1.5, ahora cambie esto a 1.6. Tendrá que hacer esto para todos los proyectos afectados.

Esta interfaz de menú / diálogo bizantino es típica del diseño de interfaz de usuario pobre de Eclipse.


301
2017-09-08 03:48



En caso de que esto le ocurra a cualquier otra persona que haya probado alphazero y el método de Paul y aún así no haya funcionado.

Para mí, eclipse de alguna manera 'en caché' los errores de compilación incluso después de hacer un proyecto> Limpiar ...

Tuve que desmarcar Proyecto> Crear automáticamente, luego hacer un Proyecto> Limpiar y luego volver a compilar.

Además, en caso de duda, intente reiniciar Eclipse. Esto puede solucionar una gran cantidad de errores incómodos e inexplicables.


74
2018-01-26 17:22



Para resolver este problema, vaya a Propiedades del proyecto -> Compilador de Java -> Seleccione el nivel de cumplimiento del compilador en 1.6-> Aplicar.


38
2017-12-26 09:38



La respuesta de Paul funcionó parcialmente. Todavía tenía un error entonces. Entonces, además de eso, también tuve que ir a Propiedades-> Project Facets y establecer la versión de Java de 1.5 a 1.6.

Tal vez eso ayude.


18
2018-02-05 16:25



Chicos en mi caso ninguna de las soluciones anteriores funcionó.

Tuve que eliminar los archivos dentro del espacio de trabajo del proyecto:

  • .proyecto
  • .classpath

Y la carpeta:

  • .settings

Luego copié los de un proyecto similar que estaba trabajando antes. Esto logró arreglar mi proyecto roto.

Por supuesto, no use este método antes de probar las alternativas anteriores !.


11
2017-12-28 20:31



Si nada de lo anterior ayuda, asegúrese de tener una adecuada "Entorno de ejecución"seleccionado, y no un "JRE alternativo".

Para ser encontrado en:

Proyecto -> Ruta de compilación -> Bibliotecas

Selecciona el JRE System Library y haga clic Edit....

Si se selecciona "JRE alternativo ...", cámbielo a un "Entorno de ejecución" apropiado como JavaSE-1.8 (jre1.8.0_60). No tengo idea de por qué, pero esto lo resolverá.


9
2017-09-04 21:44