Chaque fois que je dois réimporter mes projets dans Eclipse (si j'ai réinstallé Eclipse ou changé l'emplacement des projets), presque toutes mes méthodes remplacées ne sont pas formatées correctement, ce qui provoque l'erreur:
La méthode doit remplacer une méthode de superclasse
Il peut être intéressant de mentionner que cela concerne les projets Android pour une raison quelconque, les valeurs des arguments de méthode ne sont pas toujours renseignées, je dois donc les remplir manuellement moi-même. Par exemple:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//These arguments have their correct names
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
}
});
sera initialement rempli comme ceci:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//This methods arguments were not automatically provided
public void onCreateContextMenu(ContextMenu arg1, View arg2,
ContextMenuInfo arg3) {
}
});
La chose étrange est que si je supprime mon code et que Eclipse recrée automatiquement la méthode, il utilise les mêmes noms d'argument que j'avais déjà, donc je ne sais pas vraiment où est le problème, sinon il formate automatiquement la méthode pour moi.
Cela devient assez pénible d'avoir à recréer manuellement TOUTES mes méthodes remplacées à la main. Si quelqu'un peut expliquer pourquoi cela se produit ou comment y remédier. Je serais très content.
Peut-être est-ce dû à la façon dont je mets en forme les méthodes, qui sont à l'intérieur d'un argument d'une autre méthode?
Réponses:
Eclipse utilise par défaut Java 1.5 et vous avez des classes implémentant des méthodes d'interface (qui en Java 1.6 peuvent être annotées
@Override
, mais en Java 1.5 ne peuvent être appliquées qu'aux méthodes remplaçant une méthode de superclasse).Accédez à vos préférences de projet / IDE et définissez le niveau du compilateur Java sur 1.6 et assurez-vous également de sélectionner JRE 1.6 pour exécuter votre programme à partir d'Eclipse.
la source
Avec Eclipse Galileo, accédez à l'élément de menu Eclipse -> Préférences, puis sélectionnez Java et compilateur dans la boîte de dialogue.
Maintenant, il peut toujours afficher le niveau de conformité du compilateur à 1.6, mais vous voyez toujours ce problème. Alors maintenant, sélectionnez le lien " Configurer les paramètres spécifiques au projet ... " et là-bas, vous verrez que le projet est défini sur 1.5, maintenant changez-le en 1.6. Vous devrez effectuer cette opération pour tous les projets concernés.
Cette interface de menu / boîte de dialogue byzantine est typique de la mauvaise conception de l'interface utilisateur d'Eclipse.
la source
Au cas où cela arriverait à quelqu'un d'autre qui a essayé à la fois alphazero et la méthode de Paul et qui n'a toujours pas fonctionné.
Pour moi, l'éclipse a en quelque sorte «mis en cache» les erreurs de compilation même après avoir fait un projet> nettoyer ...
J'ai dû décocher Projet> Générer automatiquement, puis faire un projet> Nettoyer, puis recréer.
En cas de doute, essayez de redémarrer Eclipse . Cela peut corriger de nombreuses erreurs gênantes et inexplicables.
la source
Pour résoudre ce problème, accédez aux propriétés de votre projet -> Compilateur Java -> Sélectionnez le niveau de conformité du compilateur à 1.6-> Appliquer.
la source
La réponse de Paul a fonctionné en partie pour moi. J'avais encore une erreur alors. Donc, en plus de cela, j'ai également dû aller dans Propriétés-> Facettes du projet et y définir la version Java de 1.5 à 1.6.
Peut-être que cela aide.
la source
Les gars dans mon cas, aucune des solutions ci-dessus n'a fonctionné.
J'ai dû supprimer les fichiers dans l'espace de travail Project:
Et le dossier:
Ensuite, j'ai copié ceux d'un projet similaire qui fonctionnait auparavant. Cela a réussi à réparer mon projet cassé.
Bien sûr, n'utilisez pas cette méthode avant d'essayer les alternatives précédentes!.
la source
Si rien de ce qui précède ne vous aide, assurez-vous que vous avez sélectionné un « environnement d'exécution » approprié , et non un «JRE alternatif».
À trouver sous:
Sélectionnez
JRE System Library
et cliquez surEdit...
.Si "Alternate JRE ..." est sélectionné, remplacez-le par un "Execution Environment" approprié
JavaSE-1.8 (jre1.8.0_60)
. Je ne sais pas pourquoi, mais cela le résoudra.la source
C'est la deuxième fois que je rencontre ce problème. première fois selon la recommandation de l'alphazéro cela a fonctionné. mais dans la deuxième fois j'ai mis à 1.6 cela ne fonctionne pas comme "CACHE" cette erreur après le nettoyage et la reconstruction.
Essayez de désactiver "Build Automatically" comme Rollin_s l'a dit -> erreur toujours là!
J'ai donc supprimé le projet problématique (déjà défini sur 1.6) de l'Explorateur de packages et l'importez à nouveau -> il démarre une reconstruction et aucune erreur cette fois
J'espère que cela aide quelqu'un
la source
La correction doit remplacer une erreur de méthode de super classe n'est pas difficile, il vous suffit de changer la version source de Java en 1.6 car à partir de Java 1.6 @Override, l'annotation peut être utilisée avec la méthode d'interface. Afin de changer la version source en 1.6, suivez les étapes ci-dessous:
la source
Dans mon cas, ce problème s'est produit lorsque j'ai importé un projet Maven dans Eclipse. Pour résoudre ce problème, j'ai ajouté ce qui suit dans
pom.xml
:Ensuite, dans le menu contextuel du projet, allez dans "Maven -> Mettre à jour le projet ...", et appuyez sur OK.
C'est ça. J'espère que cela t'aides.
la source
Dans mon cas, aucune des solutions ci-dessus ne fonctionne. Je dois retirer mon code source dans un autre dossier. Depuis eclipse, sélectionnez Fichier> Changer d'espace de travail> Autre ... puis importez le code dans les nouveaux espaces de travail. ça marche après ça.
la source
Cela se produit lorsque votre projet maven utilise un niveau de conformité du compilateur différent et que l'IDE Eclipse utilise un niveau de conformité du compilateur différent. Pour résoudre ce problème, nous devons modifier le niveau de conformité du compilateur du projet Maven au niveau utilisé par l'EDI.
1) Pour voir les utilisations du niveau de conformité du compilateur Java dans l'IDE Eclipse
*) Fenêtre -> Préférences -> Compilateur -> Niveau de conformité du compilateur: 1,8 (ou 1,7, 1,6 ,, ect)
2) Pour changer le niveau de conformité du compilateur Java du projet Maven
*) Allez dans "Projet" -> "Propriétés" -> Sélectionnez "Java Compiler" -> Modifiez le niveau de conformité du compilateur: 1.8 (ou 1.7, 1.6 ,, ect)
la source