Eclipse unter Windows nicht lösen können java.util.Komparator
Ich bin nicht vertraut mit Java oder Eclipse. Es gibt ein java-Programm mit mehreren Importen, die ich ausführen möchten. Ich erstellte ein neues Projekt in Eclipse und eingefügt in den code, aber es zieht eine rote Linie unter java.util.Komparator und sagt, dass es nicht gelöst werden kann. Alle anderen Importe Arbeit.
Verwirrt, ich heruntergeladen habe die neueste version von Eclipse und überschrieb die Vorherige version, aber problem besteht immer noch. Ich schrieb ein "HelloWorld" - Programm und es funktioniert.
Hier ist ein Beispielcode um das problem zu reproduzieren:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator; //error: The import java.util.Comparator cannot be resolved
import java.util.HashMap;
import java.util.Iterator;
public class MyClass
{
class MyComparator implements Comparator //error: Comparator cannot be resolved to a type
{
public int compare(Object arg0, Object arg1)
{
ArrayList<String> ap0 = (ArrayList<String>) arg0;
ArrayList<String> ap1 = (ArrayList<String>) arg1;
return ap0.size() - ap1.size();
}
}
void work()
{
ArrayList<ArrayList<String>> list = new ArrayList<ArrayList<String>>();
Collections.sort(list, new MyComparator()); //error: The method sort(List<T>, Comparator<? super T>) from the type Collections refers to the missing type Comparator
}
}
Den compiler (oder builder?) sagt auch:
Das Projekt wurde nicht gebaut, da seine build-Pfad ist unvollständig. Kann nicht finden die Klasse-Datei für java.util.Komparator. Update der build-Pfad dann versuchen, den Bau dieses Projekt
Vorschläge?
- Ich vermute, dass Ihr problem könnte mit Generika, dass Ihr code hat eine
Comparator<T>
oder etwas ähnliches. Wenn ja, dann ändern Sie den Java-compiler "compliance-level" - Einstellung auf 1.5 oder höher. Für bessere Hilfe, zeigen eine kleine full-Programm, das funktioniert nicht zusammen mit der kompletten Fehlermeldung. Lasst uns vermeiden, raten. - Zum Beispiel, überprüfen Sie bitte die Antworten hier:Java Generics funktioniert nicht
- code-Beispiel Hinzugefügt. Compliance level 1.7.
- Ich habe keine Ahnung. Was geschieht, wenn Sie löschen die spezifischen Einfuhrbestimmungen für Komparator und dann auf Ihre implements Comparator Linie, platzieren Sie den cursor an das Ende der
implements Comparator
und drücken Sie Strg-Leertaste (wenn Sie auf einem Windows-system), damit Eclipse automatisch in den import?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie sowohl JRE7 und 1.8 installiert, wechseln Sie von 1,8 bis 7.
Löschen Sie die Zeile java.util.Sammlungen, klicken Sie dann auf Strg+shift+o und wählen Sie die richtigen sind.Wenn es nicht die empfohlene Artikel, Links der neue rote Linie zeigt Ihnen den Grund.
Könnten Sie verwenden eine alte Java-version für Eclipse starten von VM oder Sie haben eine ältere JVM, die für den Arbeitsbereich oder Projekt-Einstellungen. Die einfachste Sache zu prüfen ist, zu prüfen JRE System Library Knoten im Projekt-explorer und wählen Sie Eigenschaften wählen Sie ein anderes ein. Sie müssen möglicherweise installieren/registrieren alle installiert/bekannte JDKs unter Windows->Einstellungen->Java->Installierte JREs. Eclipse-compiler Erben die Quelle compliance-Niveau von der gewählten JRE.