Chaque fois que je dois réimporter mes projets dans Eclipse (si j'ai réinstallé Eclipse ou modifié l'emplacement des projets), presque toutes mes méthodes surchargées ne sont pas correctement formatées, ce qui a provoqué l'erreur:
La méthode doit remplacer une méthode superclass
Il peut être intéressant de mentionner qu'il s'agit de Android projets - pour une raison quelconque, les valeurs d'argument de méthode ne sont pas toujours renseignées; je dois donc les renseigner moi-même manuellement. Par exemple:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//These arguments have their correct names
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
}
});
sera initialement peuplé comme ceci:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//This methods arguments were not automatically provided
public void onCreateContextMenu(ContextMenu arg1, View arg2,
ContextMenuInfo arg3) {
}
});
Ce qui est étrange, c’est que si je supprime mon code et que Eclipse recrée automatiquement la méthode, elle utilise les mêmes noms d’arguments que ceux que j’avais déjà. Je ne sais donc pas vraiment où se trouve le problème. moi.
Cela devient assez pénible de devoir recréer manuellement TOUTES mes méthodes remplacées. Si quelqu'un peut expliquer pourquoi cela se produit ou comment y remédier, je serais très heureux.
Peut-être est-ce dû à la façon dont je formate les méthodes, qui sont à l'intérieur d'un argument d'une autre méthode?
Eclipse utilise par défaut Java 1.5 et vous avez des classes implémentant des méthodes d'interface (qui, dans Java 1.6, peuvent être annotées avec @Override
, mais dans Java 1.5 s’applique uniquement aux méthodes remplaçant une méthode superclasse).
Accédez à vos préférences de projet/IDE et définissez le niveau de compilateur Java sur 1.6. Assurez-vous également de sélectionner JRE 1.6 pour exécuter votre programme à partir d'Eclipse.
Avec Eclipse Galileo, accédez à l’option 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 du projet ... " et vous verrez que le projet est défini sur 1.5, modifiez-le en 1.6. Vous devrez le faire pour tous les projets concernés.
Cette interface menu/dialogue byzantine est typique de la piètre conception de l'interface utilisateur d'Eclipse.
Au cas où cela arriverait à quelqu'un d'autre qui a essayé à la fois la méthode alphazero et la méthode de Paul et qui n'a toujours pas fonctionné.
Pour moi, Eclipse a en quelque sorte "mis en cache" les erreurs de compilation même après avoir effectué un projet> Nettoyer ...
Je devais décocher Projet> Construire automatiquement, puis faire un projet> Nettoyer, puis compiler à nouveau.
En cas de doute, essayez de redémarrer Eclipse. Cela peut corriger beaucoup d'erreurs maladroites et inexplicables.
Pour résoudre ce problème, accédez à vos propriétés de projet -> Java compilateur -> Sélectionnez le niveau de conformité du compilateur à 1.6-> Appliquer.
La réponse de Paul a fonctionné partiellement pour moi. J'ai encore eu une erreur alors. Donc, en plus de cela, je devais aussi aller dans Propriétés-> Facettes du projet et y définir la version Java de 1.5 à 1.6.
Peut-être que ça aide.
Les gars dans mon cas, aucune des solutions ci-dessus n'a fonctionné.
J'ai dû supprimer les fichiers dans l'espace de travail du projet:
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 !.
Si rien de ce qui précède n’aide, assurez-vous que vous avez sélectionné "Environnement d’exécution" et que ne soit pas un "JRE alternatif". ".
Se trouve sous:
Projet -> Chemin de construction -> Bibliothèques
Sélectionnez le JRE System Library
et cliquez sur Edit...
.
Si "Alterner JRE ..." est sélectionné, remplacez-le par un "Environnement d'exécution" approprié, tel que JavaSE-1.8 (jre1.8.0_60)
. Aucune idée pourquoi, mais cela va le résoudre.
C'est la deuxième fois que je rencontre ce problème. première fois selon la recommandation de l'alphazero cela a fonctionné. mais dans la deuxième fois, j'ai mis à 1.6 cela ne fonctionne pas, il ressemble à "CACHE" cette erreur après nettoyer et reconstruire.
Essayez de désactiver 'Construire automatiquement' comme dit Rollin_s -> erreur toujours ici!
J'ai donc supprimé le projet problématique (déjà défini sur 1.6) de l'Explorateur de packages et l'important à nouveau -> il lance une reconstruction et aucune erreur cette fois
J'espère que cela aidera quelqu'un
La correction doit remplacer une erreur de méthode de classe super n'est pas difficile, il vous suffit de changer la version source de Java à 1.6 car à partir de Java 1.6, l'annotation @Override peut être utilisée avec la méthode d'interface. Afin de changer la version source en 1.6, suivez les étapes ci-dessous:
Dans mon cas, ce problème est survenu lorsque j'ai importé un projet Maven dans Eclipse. Pour résoudre ce problème, j'ai ajouté ce qui suit dans pom.xml
:
<properties>
...
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
Ensuite, dans le menu contextuel du projet, allez à "Maven -> Mettre à jour le projet ...", puis appuyez sur OK.
C'est ça. J'espère que cela t'aides.
Dans mon cas, aucune des solutions ci-dessus ne fonctionne. Je dois extraire mon code source dans un autre dossier. Dans Eclipse, sélectionnez Fichier> Basculer les espaces de travail> Autre ..., puis importez le code dans les nouveaux espaces de travail. ça marche après ça.
Cela se produit lorsque votre projet maven utilise un niveau de conformité du compilateur différent et que Eclipse IDE utilise un niveau de conformité du compilateur différent. Afin de résoudre ce problème, nous devons modifier le niveau de conformité du compilateur du projet Maven au niveau utilisé par IDE.
1) Pour voir Java le niveau de conformité du compilateur utilisé dans Eclipse IDE
*) Fenêtre -> Préférences -> Compilateur -> Niveau de conformité du compilateur: 1.8 (ou 1.7, 1.6 , etc.)
2) Modifier le niveau de conformité du compilateur Java du projet Maven
*) Allez dans "Projet" -> "Propriétés" -> Sélectionnez "Compilateur Java" -> Modifiez le niveau de conformité du compilateur: 1.8 (ou 1.7, 1.6, etc.).