java - Dopo aver importato un progetto in Eclipse, gli errori "Esegui l'override di un metodo di superclasse"




android (8)

Con Eclipse Galileo vai a Eclipse -> voce di menu Preferenze, quindi seleziona Java e Compilatore nella finestra di dialogo.

Ora potrebbe ancora mostrare il livello di conformità del compilatore a 1.6, tuttavia si continua a vedere questo problema. Quindi ora seleziona il collegamento " Configura impostazioni specifiche del progetto ... " e lì vedrai che il progetto è impostato su 1.5, ora cambia in 1.6. Dovrai farlo per tutti i progetti interessati.

Questa interfaccia di dialogo / dialogo bizantino è tipica della scarsa progettazione dell'interfaccia utente di Eclipse.

Ogni volta che devo reimportare i miei progetti in Eclipse (se ho reinstallato Eclipse, o cambiato la posizione dei progetti), quasi tutti i miei metodi sovrascritti non sono formattati correttamente, causando l'errore The method must override a superclass method .

Potrebbe essere degno di nota menzionare questo con i progetti Android: per qualsiasi motivo, i valori degli argomenti del metodo non sono sempre compilati, quindi devo compilarli manualmente. Per esempio:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

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

});

sarà inizialmente popolato in questo modo:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

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

});

La cosa strana è che se rimuovo il mio codice e faccio in modo che Eclipse ricrei automaticamente il metodo, usa gli stessi nomi degli argomenti che avevo già, quindi non so davvero dove si trova il problema, a parte la formattazione automatica del metodo per me.

Questo diventa piuttosto un problema dover ricreare manualmente TUTTI i miei metodi sovrascritti a mano. Se qualcuno può spiegare perché questo succede o come risolverlo .. Sarei molto felice.

Forse è dovuto al modo in cui sto formattando i metodi, che sono all'interno di un argomento di un altro metodo?


Eclipse è predefinito a Java 1.5 e si hanno classi che implementano metodi di interfaccia (che in Java 1.6 possono essere annotati con @Override , ma in Java 1.5 possono essere applicati solo ai metodi che sostituiscono un metodo superclasse).

Vai alle preferenze del tuo progetto / IDE e imposta il livello del compilatore Java a 1.6 e assicurati di selezionare JRE 1.6 per eseguire il programma da Eclipse.


La risposta di Paul ha funzionato per me in parte. Ho ancora avuto un errore allora. Quindi, oltre a questo, ho anche dovuto andare su Proprietà-> Facette progetto e impostare la versione Java da 1.5 a 1.6.

Forse questo aiuta.


Nel caso in cui questo accade a chiunque altro abbia provato sia alphazero che il metodo di Paul e ancora non ha funzionato.

Per me, eclipse in qualche modo "memorizza" gli errori di compilazione anche dopo aver fatto un progetto> Pulisci ...

Ho dovuto deselezionare Project> Build Automatically, quindi fare un progetto> Clean, e quindi creare di nuovo.

Inoltre, in caso di dubbio, prova a riavviare Eclipse . Questo può risolvere un sacco di errori imbarazzanti e inspiegabili.


Nel mio caso, nessuna delle soluzioni sopra funziona. Devo fare il checkout del mio codice sorgente in un'altra cartella. Da eclipse selezionare File> Cambia spazio di lavoro> Altro ... e quindi importare il codice nelle nuove aree di lavoro. Funziona dopo.


Per risolvere questo problema, vai alle proprietà del progetto -> compilatore Java -> seleziona il livello di conformità del compilatore a 1.6-> Applica.


Ragazzi nel mio caso nessuna delle soluzioni sopra ha funzionato.

Ho dovuto eliminare i file all'interno dell'area di lavoro del progetto:

  • .progetto
  • .classpath

E la cartella:

  • .impostazioni

Poi ho copiato quelli di un progetto simile che stava funzionando prima. Questo è riuscito a sistemare il mio progetto rotto.

Ovviamente non usare questo metodo prima di provare le alternative precedenti !.


Se nulla di quanto sopra aiuta, assicurati di avere selezionato un " Ambiente di esecuzione " e non un "JRE alternativo".

Si trova sotto:

Progetto -> Costruisci percorso -> Librerie

Seleziona la JRE System Library e fai clic su Edit...

Se è selezionato "Alternate JRE ...", modificarlo in "Ambiente di esecuzione" JavaSE-1.8 (jre1.8.0_60) come JavaSE-1.8 (jre1.8.0_60) . Non ho idea del perché, ma questo lo risolverà.





superclass