Eclipse Erreur: java.lang.CharSequence ne peut pas être résolu
J'ai une erreur en essayant de compiler un simple code dans Eclipse. Je suis en utilisant jre8.
Par exemple, lorsque j'essaie de compiler ce code:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class MyProject {
public static void main (String args[])
{
List<String> myList = new ArrayList<String>();
myList.add("test");
myList.add("test2");
Collections.sort(myList);
}
}
Je reçois une erreur dans le Collections.sort(myList);
ligne.
L'erreur est:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The type java.lang.CharSequence cannot be resolved. It is indirectly referenced from required .class files
at project.Principal.main(Principal.java:14)
J'ai déjà ouvert eclipse Build Path, retiré JRE System Library [jre8] et de l'ajouter de nouveau. Mais ne fonctionne pas! Que puis-je faire? Merci!
PS.: Dans le Collections.sort(myList);
ligne eclipse affiche cette erreur:
Le type java.lang.CharSequence ne peut pas être résolu. Il est inderectly référencé de besoin .les fichiers de classe.
Ce JDK sont u à l'aide?
jdk1.8.0_05 (directement à partir du dossier)
Avez-vous essayé de créer un nouvel espace de travail?
Quel est votre Eclipse version? Voir Comment configurer eclipse avec le JRE 8?.
double possible de Le type java.lang.CharSequence ne peut pas être résolu dans le package de déclaration
jdk1.8.0_05 (directement à partir du dossier)
Avez-vous essayé de créer un nouvel espace de travail?
Quel est votre Eclipse version? Voir Comment configurer eclipse avec le JRE 8?.
double possible de Le type java.lang.CharSequence ne peut pas être résolu dans le package de déclaration
OriginalL'auteur felipeek | 2014-07-13
Vous devez vous connecter pour publier un commentaire.
De s'assurer que votre Eclipse IDE prend en charge Java 8:
La première Éclipse de la version Java 8 a été Eclipse Kepler SR2 (4.3.2) avec un patch supplémentaire. (Voir: L'installation de Java™ 8 de Soutien dans Eclipse Kepler SR2, et de la place de Marché de l'Élément qui doit être installé: Java 8 support pour Eclipse Kepler SR2).
À mon avis vous devriez udpate à la la dernière Version d'Eclipse.
Avec Luna SR2 (4.4.2) pas de patch supplémentaire est nécessaire.
Assurer la 1.8 JRE est disponible dans votre espace de travail:
Windows > Préférences: Java > Installé Jre
Si ce n'est pas le cas, vous pouvez ajouter un nouveau JRE avec le bouton ajouter.
S'assurer que
JRE System Library
==JavaSE-1.8
pour votre ProjetDans l'Explorateur de packages, vous devriez voir la version de Java:
Si ce n'est pas correct, vous devez ouvrir le menu contextuel de la
JRE System Library
élément et sélectionner leProperties
entrée de menu.Dans votre projet, vous avez un
.classpath
fichier (Utilisez leNavigator View
si vous ne voyez pas le fichier), qui devrait ressembler à ceci:Reconstruire votre projet
Menu projet > Nettoyer...
Sélectionnez votre projet à partir de la liste ou de "Nettoyer tous les projets" et de "lancer un build immédiatement"
Voir aussi:
Je vais avoir le même problème. Mais mon eclipse est l'aide de l'jre1.8.0.45. Mais je suis toujours confronté au problème avec les "StringBuilder" ou un "StringBuffer' classe.
"vous devez ouvrir le menu contextuel de la JRE System Library élément et sélectionnez l'entrée de menu de Propriétés" comment dois-je faire?
OriginalL'auteur Jmini
C'est parce que le BytecodeParser classe dans la suie.JastAddJ ne prend pas en charge plus de la version de la classe java format de fichier.Le CONSTANT_MethodHandle,CONSTANT_MethodType et CONSTANT_InvokeDynamic de la constante de type piscine manqué.Ci-dessous est ma solution à la question:
(1) ajouter le type int de la suie.JastAddJ.BytecodeParser:
(2) ajout de 3 classes à l'appui de l'analyse:
dans la méthode
parseEntry
de suie.JastAddJ.BytecodeParser,ajouterCONSTANT_MethodHandle_Info,
CONSTANT_MethodType_Info,
CONSTANT_InvokeDynamic_Info
dans le commutateur cas de bloc.
Maintenant,la suie peut exécuter avec succès.
pour analyser constante de la piscine dans le fichier de classe java,vous pouvez apprendre le fichier de classe java format pour plus de détails.
ty. j'ai déjà résolu le problème 🙂
OriginalL'auteur 胡启志