Neue Funktionen in 3.1

In diesem Dokument werden Ihnen einige interessante bzw. wichtige Änderungen an den Java-Entwicklungstools vorgestellt, die seit Version 3.0 für das Eclipse-Release 3.1 vorgenommen wurden. Diese werden in verschiedene Abschnitte aufgeschlüsselt:

J2SE 5.0


J2SE 5.0

Eclipse 3.1 enthält vollständigen Support für die neuen Funktionen von J2SE 5.0 (aka "Tiger"). Eine der wichtigsten Folgen dieses Supports besteht darin, dass Sie ihn nicht bemerken werden -- alles, was Sie bei der Arbeit mit J2SE 1.4 erwarten, einschließlich Bearbeiten, Unterstützung für Code, Kompilieren, Debugging, Schnellkorrekturen, Refactoring, Quellenaktionen, Durchsuchen, etc., funktioniert effizient mit den neuen Typen und der Syntax von J2SE 5.0.

Für die Codekompatibilität mit J2SE 5.0 benötigen Sie eine Java-Laufzeitumgebung (JRE) der Version 5.0. Nach dem ersten Start von Eclipse in einer JRE der Version 5.0 wird diese als Standard verwendet. Anderenfalls müssen Sie den Dialog 'Installierte JREs' verwenden, um die Registrierung bei Eclipse durchzuführen. Diesen Dialog können Sie über die Benutzervorgaben Java > Installierte JREs oder mit Hilfe des Links Standard konfigurieren... des Assistenten für neue Java-Projekte aufrufen.

Assistent für neues Java-Projekt


Schnellkorrektur für
das Aktualisieren der JRE und Compiler-Kompatibilität auf Version 5.0

Eine neue Schnellkorrektur unterstützt Sie beim Ändern der Kompatibilitätseinstellungen, wenn Sie versuchen, Konstrukte der Version 5.0 in ein Projekt der Version 1.4 einzugeben. Beachten Sie, dass eine JRE der Version 5.0 erforderlich ist, die auf der Benutzervorgabenseite 'Installierte JREs' hinzugefügt werden kann.

Schnellkorrektur zum Ändern der Kompatibilität


Unterstützungsmerkmale des Assistenten für neuen Typ

Die Assistenten für einen neuen Typ unterstützen in verschiedenen Feldern die generischen J2SE 5.0-Typen:
  • Das Feld Name kann Deklarationen für Typparameter umfassen.
  • Die Superklasse und die implementierten Schnittstellen können generische Typargumente umfassen.

Bild des Assistenten für neuen Typ


Aufzählungen und Anmerkungen erstellen

Aufzählungen und Anmerkungen können mit dem Assistenten für eine neue Aufzählung oder Anmerkung erstellt werden:

Assistent für Aufzählung


Typargumente erraten

Die Unterstützung für Code fügt die korrekten Typargumente ein, wenn ein Typ im Java-Editor fertig gestellt wird. Es werden eindeutige Typargumente ausgewählt, und mit der Tabulatortaste kann von einem Argument zum nächsten gewechselt werden.

In diesem Beispiel wird Zeichenfolge als das erste Typargument eingefügt, während Nummer als zweites Argument vorgeschlagen wird:

Screenshot: Ein 'HashMap' wird von einer Methode zurückgegeben, die 'Map<Zeichenfolge deklariert, ? erweitert Nummer>' als Rückgabetyp. 'Zeichenfolge' wird als erstes Typargument eingegeben, während 'Nummer' als das zweite Argument vorgeschlagen wird

Um diese Funktion zu verwenden, müssen Sie Argumentnamen einfügen auf der Benutzervorgabenseite Java > Editor > Unterstützung für Code aktivieren.


Die Deklaration eines Typparameters verdeckt eine andere Typdiagnose.

Der Java-Compiler kann optional eine Deklaration eines Typparameters, die einen anderen Typ verdeckt, markieren.

Bild des Java-Editors mit Typparameter, der eine andere Typwarnung verdeckt


Refactoringoperation zum Umbenennen

Die Refactoringoperation zum Umbenennen wurde um das Umbenennen von Typparametern erweitert.

Screenshot zeigt das Umbenennen eines Typparameters in einer generischen Klasse


Generische Typargumente ableiten
Refactoring

In J2SE 5.0 kann Ihr Code Generics zur Verbesserung der Lesbarkeit und Sicherheit statischer Typen verwenden. Die Refactoringoperation > Generische Typargumente ableiten ist eine neue Refactoringfunktion, die Clients generischer Klassenbibliotheken, wie das Java Collections Framework, bei der Migration ihrer Codes unterstützt.

Clients unformatierter Container erweitern - vorher

Die Refactoringfunktion leitet Typparameter für generische Typen ab und entfernt nicht erforderliche Umsetzungen. Sie wird für einzelne Kompiliereinheiten sowie ganze Pakete und Java-Projekte ausgeführt.

Clients unformatierter Container erweitern - nachher


Schnellkorrekturen für Generics

Sie erhalten nun auch für nicht aufgelöste Java-Typen einen Vorschlag, einen neuen Typparameter zu erstellen:

Schnellkorrektur für 'Typparameter hinzufügen'

Es wurde eine Unterstützung für Javadoc-Tags für Typarameter hinzugefügt. In J2SE 5.0 verwenden Ihre Typparameter für Dokumente das vorhandene @param-Tag, der Name ist jedoch in spitzen Klammern eingeschlossen.

Javadoc-Schnellkorrektur für Typparameter


Neue Filter für Suchergebnisse für die Verweissuche für Typen mit Parameterangaben

Bei der Suche nach Verweisen auf einen Typ mit Parameterangaben, wie z. B. Liste<ganze Zahl>, enthält das Suchergebnis auch Verweise auf alle Vorkommen von 'Liste'. Die Sicht 'Suchergebnisse' bietet zwei zusätzliche Filter, um Treffer auszublenden:

  • Filter für nicht kompatible Übereinstimmungen: Dieser Filter blendet alle Ergebnisse aus, die mit dem Suchmuster nicht zuordnungskompatibel sind. Beispielsweise wird bei der Suche nach Liste<ganze Zahl> durch den Filter für nicht kompatible Übereinstimmungen Liste<Zeichenfolge> ausgeblendet, allerdings nicht Liste<? erweitert Nummer>.
  • Filter für ungenaue Übereinstimmungen: Dieser Filter blendet alle Ergebnisse aus, die nicht genau mit dem Muster übereinstimmen. Im vorstehenden Beispiel blendet der Filter auch Liste<? erweitert Nummer> aus.

Schnellkorrektur für 'Typparameter hinzufügen'


Fertigstellung bei Anmerkungen

Es wird die Codefertigstellung innerhalb einer einzigen Member-Anmerkung oder eines Werts eines Anmerkungsattributs unterstützt.

Bild des Java-Editors bei der Fertigstellung eines Anmerkungsattributs


Verwendung eines Anmerkungstyps als Diagnose für Superschnittstelle

In J2SE 5.0 kann eine Klasse aufgrund der Java-Sprache, einen Anmerkungstyp implementieren. Hiervon wird jedoch generell abgeraten. Der Java-Compiler markiert diese Verwendung optional.

Bild des Java-Editors bei Verwendung eines Anmerkungstyps als Superschnittstellenwarnung


Unterstützung für Anmerkungen des Typs @SuppressWarnings

Die J2SE 5.0-Anmerkung @SuppressWarnings wird unterstützt. Die Namen der erkannten Warnungstoken lauten: "all", "boxing", "dep-ann", "deprecation", "incomplete-switch", "hiding", "finally", "static-access", "nls", "serial", "synthetic-access", "unqualified-field-access", "unchecked", "unused" und "warningToken". Im nachstehenden Beispiel ist das erste Feld mit der Anmerkung @SuppressWarnings("deprecation") gekennzeichnet, und es wird keine Veraltungswarnung ausgegeben. Das zweite Feld hat keine Kennung, und es wird eine Veraltungswarnung gemeldet.

Bild des Java-Editors bei Verwendung von @SuppressWarnings

Eine Compiler-Option steuert, ob Anmerkungen des Typs @SuppressWarnings aktiv oder inaktiv ist. Weitere Informationen finden Sie unter Java > Compiler > Fehler/Warnungen > J2SE 5.0-Optionen > Anmerkungen des Typs '@SuppressWarnings' aktivieren.

Standardmäßig werden nicht verarbeitete Warnungstoken durch eine Warnung gemeldet. Auch diese Warnung kann mit der Anmerkung @SuppressWarnings("warningToken") unterdrückt werden.

Bild des Java-Editors bei der Verwendung eines warningToken


Schnellkorrektur
Unterstützung für
@SuppressWarnings

Warnungen, die mit Hilfe einer Anmerkung des Typs @SuppressWarning unterdrückt werden können, bieten hierfür eine Schnellkorrektur. aEine Schnellkorrektur kann auf die nachstehende nicht verwendete lokale Warnung angewendet werden.

Schnellkorrektur 'Warnung unterdrücken'

Ergebnisse in:

Problem mit unterdrückter nicht verwendeter Warnung


Diagnose 'Fehlende Anmerkung des Typs @Override

Der Java-Compiler kann optional eine Methode markieren, die eine Superklassenmethode überschreibt, jedoch nicht über eineentsprechende Anmerkung des Typs @Override verfügt. Fehlende Anmerkungen des Typs @Override können mit Hilfe der Schnellkorrektur hinzugefügt werden.

Bild des Java-Editors mit einer Methode, der eine Warnung des Typs @Override fehlt

Weitere Informationen finden Sie unter den Benutzervorgaben Java > Compiler > Fehler/Warnungen > J2SE 5.0-Optionen > Fehlende Anmerkung des Typs '@Override

Diagnose 'Fehlende Anmerkung des Typs @Deprecated'

Der Java-Compiler erkennt die Anmerkungen des Typs @Deprecated und behandelt sie entsprechend dem doc-Kommentar /** @deprecated */. Optional kann er veraltete Konstrukte, denen eine eigene Anmerkung @Deprecated fehlt, markieren (um die Verwendung von Anmerkungen statt doc-Kommentarkennungen zu unterstützen).

Bild des Java-Editors mit der Warnung über fehlende Anmerkung des Typs @Deprecated

Weitere Informationen finden Sie unter Java > Compiler > Fehler/Warnungen > J2SE 5.0-Optionen > Fehlende Anmerkung des Typs '@Deprecated'.

Diagnose einer unvollständigen Aufzählung einer Anweisung SWITCH

Der Java-Compiler kann optional unvollständige Aufzählungen einer Anweisung SWITCH markieren.

Bild des Java-Editors mit Warnung vor unvollständiger Aufzählung einer Anweisung SWITCH

Weitere Informationen finden Sie unter Java > Compiler > Fehler/Warnungen > J2SE 5.0-Optionen > Nicht alle Aufzählungskonstanten bei 'switch' abgedeckt.

Compiler-Diagnose für Kennung 'enum'

Der Java-Compiler kann die Verwendung von 'enum' als Kennung finden und markieren. Während 'enum' bis zur Quellenebene 1.4 eine zulässige Kennung war, ist es ab Quellenebene 5.0 ein reserviertes Schlüsselwort. Die Aktivierung dieser Warnung ist eine Unterstützung bei der Prognose von Problemen der Quellenmigration. Weitere Informationen finden Sie bei der Benutzervorgabe Java > Compiler > JDK-Kompatibilität > Kennung mit dem Namen 'enum' nicht zulassen.

Optionale Diagnose des Compilers für die Kennung 'enum'


Schnellkorrektur für
Aufzählungskonstanten erstellen

Die Schnellkorrektur unterstützt die Erstellung von Aufzählungskonstanten. Im nachstehenden Beispiel fehlt die Konstante BLUE bei der Aufzählung Farben.

Optionale Diagnose des Compilers für die Kennung 'enum'


Parameter 'Autoboxing'
Vorschläge

Die vorgeschlagenen Parameter umfassen Vorschläge für 'Auto(un-)boxing':

Screenshot mit 'Autoboxing'-Vorschlägen

Hinweis: Die Benutzervorgabe Java > Editor > Unterstützung für Code > Argumentnamen bei Fertigstellung einfügen muss aktiviert sein.


Boxing/
Unboxing Diagnose

Die J2SE 5.0-Funktion 'Autoboxing' ist leistungsstark, sie kann jedoch zu einem unerwarteten Verhalten führen, insbesondere bei der Übergabe von Argumenten. Der Compiler führt eine optionale Diagnose ein, die anzeigt, wenn Autoboxing oder Autounboxing ausgeführt wird. Im folgenden Beispiel könnte man meinen, dass foo(Integer) aufgerufen wird, doch da Autounboxing ausgeführt wird, wird foo(int) aufgerufen.

Bild des Java-Editors mit Warnung 'Unboxing'

Weitere Informationen finden Sie unter Java > Compiler > Fehler/Warnungen > J2SE 5.0-Optionen > Konvertierungen 'Boxing' und 'Unboxing'.

Unterstützung für J2SE 5.0 im Java-Editor

Der Java-Editor bietet für die neuen J2SE 5.0-Sprachfunktionen Farbgebung für Syntax. Gehen Sie zur Benutzervorgabenseite Java > Editor > Farbgebung für Syntax, um die Farben zu ändern oder die semantische Farbgebung von Typvariablen, Anmerkungselemente und 'auto(un-)boxed' Ausdrücke zu aktivieren:

Screenshot mit der Farbgebung für Syntax für Aufzählungen, Anmerkungen, Anmerkungselemente, Typvariablen sowie 'autoboxed' Ausdrücke


Neue Schablone 'for loop'

Die Schablone foreach fügt ein neues 'for-loop' in den Code ein, wobei Exemplare lokaler Iterablen, die Sie iterieren möchten, vorgeschlagen werden:

Screenshot mit eingefügter Schablone 'for-loop'


Konvertieren in 'enhanced for loop'

Mit einer neuen Schnellunterstützung (Strg+1) kann der alte Stil für Schleifen über Bereiche und Erfassungen in J2SE 5.0 'enhanced for loops' konvertiert werden:

Bild zu einem Beispiel für die Konvertierung in 'enhanced for loop'

Die Schnellkorrektur vereinfacht die Schleife wie folgt:

Bild mit dem Ergebnis der Schnellunterstützung 'enhanced for loop'


Vararg-Argument,
das eine Umsetzung benötigt

Der Java-Compiler kann optional verdächtige Aufrufe von Vararg-Methoden markieren. Ein 'Null-Last-Argument' ist nicht wie ein 1-Element-Array eingeschlossen, wie man vielleicht erwarten würde; das Hinzufügen einer expliziten Umsetzung macht die Absicht des Codes eindeutig.

Für Compiler-Diagnosen erforderliche Umsetzung für Vararg-Argumente

Die Einstellungen der Benutzervorgaben finden Sie unter Java > Compiler > Fehler/Warnungen > J2SE 5.0-Optionen > Ungenaue Typübereinstimmung für Vararg-Argumente.


Fertigstellung verwendet statische Importe

Die Codefertigstellung im Java-Editor kann statische Importe bei abgeleiteten kontextsensiblen Fertigstellungen verarbeiten.

Bild des Java-Editors bei der Fertigstellung und dem Finden einer Methode eines statischen Imports Math.*


Statische Import-
gruppen

Um statische Importe zu organisieren, erstellen Sie Gruppen für statische Importe und positionieren sie nach Belieben. Sie können eine Gruppe 'sonstige' definieren, um all Importe, die keiner anderen Gruppe zuzuordnen sind, zu erfassen:

Statische Importgruppe

Die Gruppenfunktion 'sonstige' steht auch für nichtstatische Importe zur Verfügung.


Unterstützung für
package-info.java

Es wurde eine Unterstützung für die besondere Quellendatei package-info.java hinzugefügt, die Pakete für Anmerkungen und Dokumentation zulässt. Alle JDT-Tools (Unterstützung für Code, Codeauswahl, Suche, Gliederung, Typhierarchien, etc.) können in dieser besonderen Kompiliereinheit verwendet werden.

Doc-Kommentare innerhalb von package-info.java werden verarbeitet, und die Syntax und Verweise in Standardkommentarkennungen werden geprüft.

Bild des Paket-Explorers und Java-Editors in package-info.java


Codeformatierungsprogramm für J2SE 5.0-Konstrukte

Das Codeformatierungsprogramm unterstützt alle neuen J2SE 5.0-Sprachkonstrukte. Die Steuerung für die Bearbeitung durch das Formatierungsprogramm findet sich auf der Benutzervorgabenseite Java > Codedarstellung > Codeformatierungsprogramm:

Bild von Benutzervorgabenseite 'Leerstellenformatierungsprogramm'


Quellcode der Version 5.0 debuggen

Sie können Quellcode der Version 5.0 mit einer JRE der Version 1.5 ausführen und debuggen. Java-Debug-Auswertungen unterstützen J2SE 5.0-Konstrukte, wie Generics und 'enhanced for loops'.

Klassendatei, die Änderungen für lokale innere Typen benennt

Im 5.0-Kompatibilitätsmodus generiert der Java-Compiler Klassendateien, die der in JLS 13.1 für lokale innere Typen angegebenen Namenskonvention folgen. Daher handelt es sich im folgenden Beispiel statt dem Erstellen einer Datei mit dem Namen X$1$A.class einfach um X$1A.class.

Bild des Navigators mit Klassendatei eines lokalen inneren Typs


Java-Debugger


Überwachungspunkte und
Unterbrechungspunkte für den
Eintrag von Methoden

Durch Doppelklicken auf die Java-Editor-Skala werden Prüfpunkte auf Feldern und Unterbrechungspunkte für Methodeneingänge in Methodendeklarationen erstellt.

Sperren und gegenseitige Sperren

Die sich im Besitz eines Threads befindlichen Sperren sowie die Sperren, auf die ein Thread wartet, können innerhalb der Sicht 'Debug' durch Wechseln zum Menüpunkt Überwachungsprogramme anzeigen im Dropdown-Menü der Sicht 'Debug' angezeigt werden. Threads und Sperren, die an einer gegenseitigen Sperre beteiligt sind, werden in rot hervorgehoben.

Eine gegenseitige Sperre in der Sicht 'Debug'


In Stack-Traces navigieren

Kopieren Sie einen Stack-Trace und fügen Sie ihn in die Java-Stack-Trace-Konsole ein, und verwenden Sie Hyperlinks zum Navigieren des Trace. Die Java-Stack-Trace-Konsole kann im Dropdown-Menü der Sicht 'Konsole' mit der Option Konsole öffnen geöffnet werden. Eingefügte Stack-Traces können mit der Tastenbelegung für Standardformat formatiert werden.

Java-Stack-Trace-Konsole


'toString()' integrieren

Der toString()-berechnete Wert einer Variablen kann integriert in der Baumstruktur der Sicht 'Variablen' sowie im Bereich Details angezeigt werden. Der Befehl Java-Detailformatierungsprogramm... in der Sicht Dropdown-Menü wird verwendet, um die Funktionsweise dieser Funktion zu konfigurieren.

Beispiel 'toString()' integrieren


Benutzerdefinierte logische Strukturen

Mit dem Java-Debugger können Sie jetzt steuern, was in der Sicht 'Variablen' für die verschiedenen Objekttypen angezeigt wird. Beispielsweise können Erfassungen als einfacher Wertebereich anstatt mit den ausführlichen Details zur Implementierung des Erfassungsobjekts angezeigt werden.

Dies erfolgt auf der Benutzervorgabenseite Java > Debug > Logische Strukturen, auf der Zuordnungen eines einfachen Ausdrucks (z. B.this.toArray()) oder einer Reihe von Ausdrücken mit Namen zu einer bestimmten Klasse oder Schnittstellevorgenommen werden können. Soll das Objekt in der Sicht 'Variablen' angezeigt werden, werden die Ausdrücke ausgewertet, um die Werte anzuzeigen.

Dialog zum Bearbeiten der logischen Java-Struktur


Erweiterte Änderung von Variablenwert

Mit dem Java-Debugger können Sie jetzt den Wert von Variablen ändern, indem Sie einen Ausdruck entweder im Dialog Wert ändern oder im Detailbereich der Sicht 'Variablen' eingeben und anschließend auf Speichern klicken.

Dialog zum Bearbeiten eines Ausdrucks, um den aktuellen Wert einer Variablen zu ersetzen


Variable suchen

Die Aktion 'Variable suchen' in der Sicht 'Variablen' ermöglicht die Eingabe des Namen der Variablen, nach der Sie suchen. Während der Eingabe wählt die Sicht 'Variablen' die nächste sichtbare Variable aus, die mit dem eingegebenen Text übereinstimmt. Der Dialog 'Variable suchen' zeigt ebenfalls Variablen an, die bislang mit dem eingegebenen Text übereinstimmen.


Javadoc-Anhänge

Sie können jetzt verschiedene Javadoc-Positionen zu jeder JAR-Datei in einer JRE-Bibliothek zuordnen.

Dialog zeigt eine Javadoc-Position pro JRE-Bibliothek


Java-Compiler


Neue Javadoc
Compiler-Einstellungen

Wenn die Javadoc-Überprüfung aktiviert ist, können Sie diese so konfigurieren, dass
  • sie eine Warnung ausgibt, wenn @see und @link-Kennungen auf veraltete Elemente verweisen,
  • sie eine Warnung ausgibt, wenn @see und @link-Kennungen auf nicht sichtbare Elemente verweisen.

Die Einstellungen befinden sich auf der Benutzervorgabenseite Java > Compiler > Javadoc.


Diagnose 'Zuordnung ohne Auswirkung auf Erweiterungsausdruck'

Die optionale Diagnose für Zuordnung ohne Auswirkungen stellt fest, wenn ein Erweiterungsausdruck zur selben Variablen zugeordnet ist, z. B. i = i++;

Bild einer Zuordnung eines Erweiterungsausdrucks


Serielle Version UID

Es gibt eine neue optionale Compiler-Diagnose für serialisierbare Klassen, die keine Deklaration eines Felds serialVersionUID aufweisen.

Die Einstellungen der Benutzervorgaben finden sich unter Java > Compiler > Fehler/Warnungen > Mögliche Programmierungsprobleme.


Frühzeitige Feststellung von Verweisen auf interne Klassen

Sie können Bibliotheks- (und Projekt-)einträge auf dem Java-Erstellungspfad Eigenschaften > Java-Erstellungspfad > Bibliotheken) mit Anmerkungen versehen, um jegliche internen Pakete festzustellen, für die Sie keine direkten Verweise von Ihrem Code erstellen möchten. Beispielsweise ist im Allgemeinen von einer Abhängigkeit von verkäuferspezifischen Paketen, wie z. B. com.ibm.* oder com.sun.*, die sich normalerweise in den J2SE-Bibliotheken befinden, abzuraten. Zugriffsbeschränkungen werden als eine Kombination aus Einschluss- und Ausschlussregeln in Einträgen des Erstellungspfads ausgedrückt. Die Mustersyntax folgt der Notation der Ant-Dateigruppe und stimmt mit dem Pfad der Klassendatei überein. Beispielsweise beschränkt die Verwendung des Musters com/ibm/** als eine Ausschlussregel den Zugriff auf alle Klassen im Paket com.ibm und seinen Unterpaketen; bei Verwendung des Musters org/eclipse/**/internal/** als einer Ausschlussregel werden alle Klassen für interne Eclipse-Pakete abgefangen. Bei der Verwendung von Einschlussregeln wird alles, das mit diesen Regeln übereinstimmt, akzeptiert, und alles übrige wird als außerhalb des gültigen Bereichs betrachtet.

Mit der Einstellung der Benutzervorgabe Java > Compiler > Fehler/Warnungen > Veraltete und eingeschränkte API kann gesteuert werden, ob falsche Verweise als Fehler oder Warnungen markiert werden (standardmäßig sind nicht zulässige Verweise Fehler, und nicht empfohlene Verweise sind Warnungen).

Bild des Dialogs zu den Eigenschaften des Java-Erstellungspfads


Zugriffsregeln für Bibliotheken und Projekte

Zugriffsregeln können für Bibliotheken und Projekte, auf die verwiesen wird, definiert werden, um den Zugriff auf bestimmte Typen expliztit zuzulassen/nicht zuzulassen/nicht zu empfehlen.

Bild des Assistenten für den Erstellungspfad mit Zugriffsregeln


Java-Editor


Verbesserte Komprimierungssymbole und Überschriften

Bei der Komprimierung eines Java-Elements enthält die verbleibende Zeile im Java-Editor den Namen des Elements. Die erste Kommentarzeile wird durch komprimierte Javadoc-Kommentare angezeigt. Die neuen einfachen Komprimierungssymbole, die im Java-Editor angezeigt werden, unterscheiden sich jetzt von den Überschreibungs- und Implementierungsindikatoren:

Bild des neuen Komprimierungssymbols


Header der Kommentarkomprimierung

Header-Kommentare und Copyrightvermerke in Java-Quellendateien können komprimiert werden:

Screenshot, zeigt einen komprimierten Header-Kommentar


Vorkommen von übernommenen Methoden markieren

Der Java-Editor kann alle Methodendeklarationen hervorheben, die von dem ausgewählten Supertyp übernommene Methoden implementieren oder überschreiben. Weitere Informationen finden Sie unter den Benutzervorgaben Java > Editor > Vorkommen markieren > Schnittstelle implementierende Methode.

Bild von 'Vorkommen von Implementierungen markieren'


Schnellmenü für neue Vorkommen

Sie können im Java-Editor ein Kontextmenü mit einer Suche nach Vorkommen öffnen, indem Sie auf Strg+Umschalttaste+U drücken.

Hinweis: Wer das alte Verhalten bevorzugt, kann die vorstehende Tastenfolge wieder dem Befehl 'Alle Vorkommen in Datei suchen' zuordnen.


Veraltete Klassen-Member im Java-Editor hervorheben

Veraltete Klassen-Member werden durch erweiterte Hervorhebung markiert:

Veraltete Member hervorheben

Dies kann auf der Benutzervorgabenseite Java > Editor > Farbgebung für Syntax konfiguriert werden.

Verweise in Javadoc

Eclipse erkennt jetzt Verweise auf Java-Elemente innerhalb von doc-Kommentaren (d.h., @see, @link, @linkplain, @throws, @exception, @param oder @value tags). Dadurch wird die Kurzhilfe und die Erstellung eines Links zu dem Java-Element, auf das verwiesen wird, aktiviert.

Bild des Java-Editors mit Kurzhilfe in Javadoc


Verbesserte Fertigstellung von leerem Wort

Bei der Java-Code-Fertigstellung für ein leeres Wort werden nicht mehr automatisch alle an der Fertigstellungsposition sichtbaren Typen vorgeschlagen. Sie müssen den ersten Buchstaben des Typs eingeben, um einen Vorschlag für die Fertigstellung zu erhalten.

Bild des Java-Editors, zeigt die Fertigstellung eines leeren Worts


Beschreibung einer QuickInfo für Javadoc

Das Javadoc, das über Bearbeiten > Beschreibung von QuickInfo anzeigen (F2) angezeigt wird, erscheint im SWT-Browser-Fensterobjekt.


Zeilen an Einrückung anpassen

Die Befehle Zeilen bewegen (Alt+Aufwärts- oder Abwärtspfeil) und Zeilen kopieren (Strg+Alt+Aufwärts- oder Abwärtspfeil) passen die Einrückung der ausgewählten Zeilen automatisch an, wenn Sie diese im Java-Editor bewegen.

Verbesserter Editor für die Java-Eigenschaftsdateien

Die Editoren für Java-Eigenschaftsdateien wurden stark verbessert. Sie bieten Syntaxhervorhebung, verbessertes Verhalten bei Doppelklicken und separate Benutzervorgaben für die Schriftart. Die Farben der Syntaxhervorhebung werden auf der Benutzervorgabenseite Java > Editor für Eigenschaftsdateien angepasst. Auch die Rechtschreibprüfung ist verfügbar, und die Schnellkorrektur kann zur Behebung von Rechtschreibproblemen verwendet werden.

Bild des Editors für Java-Eigenschaftsdateien


Mit ausgelagerten Zeichenfolgen arbeiten

Wenn Sie auf einer Taste für eine ausgelagerte Zeichenfolge im Java-Editor verweilen, wird der zugeordnete ausgelagerte Wert in einer Kurzinfo angezeigt:

Bild einer Kurzinfo zu ausgelagerter Zeichenfolge

Mit Strg+Klick navigieren Sie direkt zum Eintrag in der entsprechenden Java-Eigenschaftsdatei:

Bild von Strg+Klick im Java-Editor


Vom Eigenschaftsschlüssel im Editor für Eigenschaftsdateien zu seinen Verweisen navigieren.

Verwenden Sie Navigieren > Öffnen (F3) oder Strg+Klick, um vom Eigenschaftsschlüssel im Editor für Eigenschaftsdateien zurück zu den Stellen zu navigieren, auf die der Schlüssel verweist.

Bild mit Hyperlink des Eigenschaftsschlüssels


Der Assistent für ausgelagerte Zeichenfolgen unterstützt neue Nachrichtenpakete.

Der Assistent für ausgelagerte Zeichenfolgen unterstützt den Auslagerungsmechanismus von Eclipse, der in diesem Release neu ist:

Bild des Assistenten für die Auslagerung von Zeichenfolgen


Neue API zum Erstellen von Codevorschlägen wie im Java-Editor

Einen Editor für eine Java-ähnliche Sprache implementieren? Erstellen Sie Ihre eigenen Vorschläge für die Unterstützung für den Code, ähnlich wie sie im Java-Editor vorgeschlagen werden. Instanzieren Sie CompletionProposalCollector, um dieselben Vorschläge wie im Java-Editor oder Unterklassen zur Kombination mit Ihren eigenen Vorschlägen zu erhalten. Verwenden Sie CompletionProposalLabelProvider, um die richtigen Bilder und Bezeichnungen zu erhalten, und sortieren Sie die Vorschläge mit Hilfe von CompletionProposalComparator.

Paket: org.eclipse.jdt.ui.text.java im Plug-in org.eclipse.jdt.ui.


Allgemeine Java-Tools


Neuer Dialog 'Type öffnen'

Der Java-Dialog 'Typ öffnen' wurde auf mehrere Arten verbessert:
  • Jetzt gibt es nur noch eine einzige Liste für die Auswahl.
  • Zuerst zeigt der Dialog ein Verlaufsprotokoll der vor kurzem geöffneten Typen ; Arbeitsbereichtypen, die mit dem Muster übereinstimmen, werden unterhalb der Trennlinie angezeigt.
  • Die CamelCase-Mustererkennung führt zu weniger Tastatureingaben. Beispielsweise stimmt TZ mit TimeZone oder IOOBE mit IndexOutOfBoundsException überein.
  • Der Inhalt des Dialogs kann weiter auf ein Arbeitsset eingeschränkt werden. Das Arbeitsset kann aus dem Dropdown-Menü des Dialogs ausgewählt werden.

Dialog 'Typ öffnen'

Außerdem wurden wichtige Änderungen der Architektur vorgenommen. Die im Dialog angezeigten Typen werden nun mit einer Abfrage der Java-Suchmaschine gefunden. Dies führt zu einer Einsparung von 4-6 MB bei einem normalen Eclipse-Entwicklungsarbeitsbereich gegenüber dem vorher erforderlichen großen Speicherbedarf.


Arbeitsbereich mit vielen Projekten organisieren

Verwenden Sie die Option Anzeigen > Arbeitssets im Sichtmenü des Paket-Explorers, um einen neuen Modus zu aktivieren, der Arbeitssets als übergeordnete Elemente anzeigt. Dieser Modus erleichtert die Organisation von Arbeitsbereichen mit zahlreichen Projekten erheblich.

Paket-Explorer in Modus Arbeitsset

Verwenden Sie Arbeitssets auswählen im Sichtmenü des Paket-Explorers für die Konfiguration, welche Arbeitssets angezeigt werden. Der Dialog ermöglicht das Erstellen neuer Java-Arbeitssets sowie die Definition, welche Arbeitssets angezeigt werden, und ihre Reihenfolge. Arbeitssets können auch direkt im Paket-Explorer mit Ziehen und Übergeben sowie Kopieren/Einfügen neu angeordnet werden.


Verbesserte Seite für Quellenordner für den Assistenten für neue Java-Projekte

Eine verbesserte Konfigurationsseite für die Quellenordner im Assistenten für die Erstellung von Java-Projekten unterstützt Sie bei der Erstellung von Projekten mit vorhandener Quelle. Sie können Einträge in Quellenordner definieren, Ordner direkt in der Baumstruktur einschließen/ausschließen und unmittelbar die Ergebnisse Ihrer Aktion testen.

Neue Seite 'Quellenordner'


Einstellungen für die gemeinsame Benutzung von Java-Projekten

Für jedes Java-Projekt können angepasste Einstellungen für die Compiler-Optionen und die Codedarstellung gelten. Diese Einstellungen werden im Projekt selbst gespeichert und können automatisch angewendet werden, wenn das Projekt vom Repository geladen (oder aktualisiert) wird.

Beim Ändern der Einstellungen eines Java-Projekts über die Benutzerschnittstelle werden die Einstellungen automatisch in eine Datei im Verzeichnis .settings geschrieben. (Der Inhalt der Einstellungsdatei wird automatisch generiert und sollte nicht direkt bearbeitet werden).

Gemeinsam benutzbare Compiler-Einstellungen


Zu projektspezifischen Einstellungen navigieren

Die Benutzervorgabenseiten für die Einstellungen, die auch auf Projektbasis konfigurierbar sind, enthalten einen Link zu der projektspezifischen Benutzervorgabenseite.

Screenshot mit dem Link zu den projektspezifischen Einstellungen


In der .classpath-Datei gespeicherte Javadoc-Positionen

Die Javadoc-Positionen, die an JAR-Dateien und Klassenordner angehängt sind, werden in der .classpath-Datei gespeichert, sodass sie von einem Team gemeinsam benutzt werden können. Beim Start von 3.1 migriert ein Vorgang im Hintergrund alle vorher intern gespeicherten Positionen zur .classpath-Datei.

Die Javadoc-Positionen werden von 'Externes Javadoc öffnen' (STRG + F2) sowie dem Javadoc-Assistenten verwendet.


Direktaufrufe für Schnellkorrekturen und Schnellunterstützungen

Einige der gängigsten Schnellunterstützungen wie In Datei umbenennen und Zu lokaler Variable zuordnen können direkt mit Strg+2 R und Strg+2 L aufgerufen werden. Auf der Benutzervorgabenseite für Schlüssel finden Sie weitere Schnellkorrekturen, die Direktaufrufe unterstützen.

Benutzervorgabenseite für Schlüssel mit Direktaufrufen für Schnellkorrekturen


Neue Schnellkorrekturen

Zu mehreren Compiler-Optionen wurden neue Schnellkorrekturen hinzugefügt, z. B.:
  • Fehlende serielle Versions-ID: Screenshot mit Schnellkorrekturen für serielle Version

Neue Schnellunterstützungen

Es wurden mehrere Schnellunterstützungen (Strg+1) zum Java-Editor hinzugefügt:
  • Boolesche Ausdrücke umkehren:
    Bild der Schnellunterstützung zum Umkehren von Bedingungen
  • Bedingungsausdruck umkehren:
    Schnellunterstützung 'Bedingungsausdruck umkehren'
    Ergebnisse in:
    Umgekehrtes Ergebnis
  • Wandeln Sie den Bedingungsausdruck (? Operator) in eine if-else-Anweisung um, oder umgekehrt
  • Nach einer 'instanceof'-Prüfung eine neue lokale Variable einfügen:
    Vor Aufruf Umsetzung zu lokaler Variablen zuordnen
    Ergebnisse in:
    Ergebnis nach Aufruf von Schnellunterstützung
  • Einzelnes Literal einer Unterzeichenfolge unterbrechen:
    Schnellunterstützung 'Zeichenfolge auswählen'
    Ergebnisse in:
    Ergebnis der Schnellunterstützung 'Zeichenfolge auswählen'

Refactoringoperation Rückgängig/Wiederholen im Menü 'Bearbeiten' verfügbar

Die Refactoringoperationen Rückgängig/Wiederholen sind jetzt im Menü 'Bearbeiten' verfügbar, und die getrennten Refactoringaktionen Rückgängig/Wiederholen wurden aus der globalen Menüleiste entfernt. Zusätzlich sind die Refactoringoperationen Rückgängig/Wiederholen jetzt in die Vorgänge Rückgängig/Wiederholen im Java-Editor integriert, sodass der Vorgang Rückgängig im Editor transparenter ist. Beispielsweise kann eine im Editor ausgelöste Refactoringoperation jetzt im Editor durch Drücken auf Strg+Z rückgängig gemacht werden.

Aktion Rückgängig im Editor-Kontextmenü


Anpassung der Member-Sichtbarkeit

Die Refactoringbefehle 'Methode versetzen', 'Member-Typ in neue Datei versetzen', 'Statische Member versetzen' und 'Hochsetzen und Herabsetzen' ändern ggf. automatisch die Sichtbarkeit der Felder, Methoden und Typen, auf die verwiesen wird.

Screenshot zeigt die Versetzung eines Member-Typs zum Refactoring in neuer Datei


Refactoringoperation 'Methode versetzen'

Der Befehl Refactoring > Versetzen wurde erweitert, um zu versetzende Exemplarmethoden besser zu unterstützen. Die neuen Funktionen umfassen Folgendes:
  • Option zum Erstellen einer Stellvertretermethode für die Kompatibilität
  • Felder ohne Verweise können jetzt auch Methodenziele sein.

Screenshot zeigt die Refactoringoperation zum Versetzen einer Exemplarmethode


Refactoringoperation 'Nach Möglichkeit Supertyp verwenden'

Die Refactoringoperation 'Nach Möglichkeit Supertyp verwenden' wurde um eine Benutzervorgabe erweitert, die angibt, ob Vorkommen von Typ in instanceof-Ausdrücken aktualisiert werden sollen:

Screenshot des Assistenten für 'Nach Möglichkeit Supertyp verwenden'


Menü Erstellungspfad im Paket-Explorer

Das Kontextmenü des Java-Paket-Explorer hat einen neuen Eintrag im Menü 'Erstellungspfad', der kontextbezogene Aktionen zum Ändern des Erstellungspfads eines Java-Projekts bietet. Sie können neue Quellenordner, Archive und Bibliotheken hinzufügen/entfernen sowie Ordner und Dateien von einem Quellenordner ausschließen bzw. sie einschließen:

Menü 'Erstellungspfad'


Neues integriertes Standardprofil für Codeformatierungsprogramm in Eclipse

Obwohl das Standardprofil für Codeformatierungsprogramme für 3.0 in Eclipse als Java-Konventionen benannt ist, werden bei der Formatierung einer Datei mit Hilfe dieses Profils für die Einrückung Tabulatoren statt Leerstellen verwendet. Es wurde ein neues Profil mit dem Namen Eclipse hinzugefügt, das wiedergibt, welche Standardformatierungsoptionen, die Tabulatoren für Einrückungen verwenden, verfügbar sind. Um die tatsächlichen Einstellungen der Java-Konvention zu verwenden, wechseln Sie einfach das Profil für das Codeformatierungsprogramm mit Hilfe der Benutzervorgabenseite Java > Codedarstellung > Formatierungsprogramm zu Java-Konventionen.

Mehrere Einstellungen für Zeilenumbruch auf einmal ändern

Auf der Seite Java-Codeformatierungsprogramm können mehrere Einstellungen für den Zeilenumbruch auf einmal geändert werden, indem in der Baumstruktur mehrere Auswahlen getroffen und anschließend die Einstellungen geändert werden:

Seite 'Zeilenumbruch des Codeformatierungsprogramms'

Die Einstellungen des Codeformatierungsprogramms finden Sie auf der Benutzervorgabenseite Java > Codedarstellung > Formatierungsprogramm.


Gemischte Einstellungen für Einrückungen

Bei den Benutzervorgaben für das Java-Formatierungsprogramm kann die Größe des Tabulators unabhängig von der Größe der Einrückung konfiguriert werden (siehe Tabulator Einrückung im Profil für das Formatierungsprogramm):

Benutzervorgabenseite 'Java-Formatierungsprogramm': Legen Sie die Benutzervorgaben für Einrückungen in der Registerkarte 'Einrückungen' im Profil des Formatierungsprogramms fest.

Legen Sie z. B. die Größe des  Tabulators auf 8 und die Größe der  Einrückung auf 4 fest, um eine Einrückung Ihrer Quelle mit vier Leerzeichen festzulegen. Wenn Sie die Richtlinie für  Tabulatoren auf gemischt festlegen, werden jeweils zwei Einrückungseinheiten durch einen Tabulator ersetzt.

Die Profile des  Formatierungsprogramms können auf der Benutzervorgabenseite Java > Codedarstellung > Formatierungsprogramm konfiguriert werden.


Fehlgeschlagene Tests zuerst erneut ausführen

Mit dieser neuen Aktion in der Sicht 'JUnit' können fehlgeschlagene Test erneut ausgeführt werden, bevor erfolgreiche Tests erneut ausgeführt werden.

Letzte fehlgeschlagene Tests erneut ausführen