Advanced   Java   Services Einiges über Eclipse Back Next Up Home

Das folgende ist kein Tutorial, sondern eine kleine alphabetisch geordnete FAQ-Liste. Es sollen hier nur einige nützliche Tipps gegeben werden.


Api anzeigen

Den Namen einer Klasse oder Methode oder eines Feldes etc. markieren. Mit F2 erscheint ein großer Tooltip, der der den zugehörigen Auszug aus der API zeigt. Durch erneute drücken von F2 erhält der Tooltip den Fokus und man kann im Tooltip navigieren und Text markieren und kopieren. Mit Shift+F2 wird die komplette Klassendokumentation in einem eigenen Tab angezeigt. Beide Anzeigen werden über http realisiert, Eclipse holt sich die API von java.sun.com . Hat man keine Internetverbindung muß man über Window/Preferences den lokalen Speicherort der API angeben.


Bestimmte Ansicht wählen

Im wesentlichen muß man sich nur merken, daß Ansicht auf eclipsisch "Perspective" heißt. Also:

Window -> Open Perspective

Dann die Ansicht auswählen. Die Java-Perspective ist diejenige die wir brauchen. Sie wird auch dann oft verwendet wenn man Servlets bzw. JSP bzw. EJB entwickelt, obwohl es für diese Fälle eine eigene Ansicht (JavaEE) gibt.


Eine externe Klasse in ein Projekt aufnehmen, die nur als .class Datei vorliegt.

Eclipse weigert sich .class-Dateien in ein Projekt einzufügen. Kopieren in das bin-Projektverzeichnis etwa nützt nichts, da die Datei nicht erkannt wird. Es gibt zwei Möglichkeiten, das Problem zu lösen. Beiden Varianten ist gemein, daß man auf ein externes Verzeichnis zugreifen muß, ein bestehendes Projektverzeichnis kann man nicht wählen:


Erste Lösung (Aufnehmen der class-Datei)

Man legt die class-Datei in ein beliebiges Nichtprojektverzeichnis. Von da aus kann man sie folgendermaßen in jedes Eclipse-Projekt aufnehmen:

Project -> Properties -> Java Build Path -> Libraries -> Add External Class Folder ->

Hier sucht man das Verzeichnis, in dem die class-Datei liegt und nimmt dann diesen Ordner auf.
nach dem bestätigen mit "ok" erscheint im Package Explorer dann ein neuer Eintrag mit
der Bezeichnung "Referenced Libraries".

Will man den Eintrag wieder entfernen (oder modifizieren) dann geht man den Menuweg wieder bis
"Libraries", markiert den entsprechenden Eintrag und wählt dann "remove" oder "edit".

Zweite Lösung (Aufnehmen eines Java-Archivs das die class-Datei enthält)

Man erzeugt aus der .class-Datei eine zip-Datei und ändert anschließend die Endung zu .jar . Damit hat man die Datei in ein (simples) Javaarchiv verwandelt. Diese jar-Datei legt man nun in ein beliebiges Nichtprojektverzeichnis. Von da aus kann man sie folgendermaßen in jedes Eclipse-Projekt aufnehmen:

Project -> Properties -> Java Build Path -> Libraries -> Add External Jars ->

Hier sucht man das Verzeichnis, in dem das Archiv liegt und nimmt dann das Archiv auf.
Im Package Explorer erscheint dann ein neuer Eintrag mit der Bezeichnung "Referenced Libraries"

Will man den Eintrag wieder entfernen (oder modifizieren) dann geht man den Menuweg wieder bis
"Libraries", markiert den entsprechenden Eintrag und wählt dann "remove" oder "edit".

Getters und Setters generieren lassen

Die (private) Variable markieren -> Source Menu öffnen -> Generate getters und setters auswählen


Graphische Anwendung schließen, wenn noch kein Listener eingebaut ist

Konsole einblenden (siehe vorigen Punkt). Dann erscheint rechts ein rotes Quadrat. Durch Anklicken des Quadrates schließt sich die graphische Anwendung.


Import generieren lassen

Innere Klasse durch Eclipse anlegen lassen

Projekt im Package Explorer markieren.

Rechte Maustaste liefert Kontextmenu -> New -> Class -> Enclosing Type anhaken.

Rechts daneben muß dann der Name der umschließenden Klasse eingegeben werden. Anschließend den Namen der inneren Klasse eingeben. Der Rest sollte klar sein.

Die entstehende innere Klasse wird an den Anfang der umschließenden Klasse gesetzt, noch vor dem privaten Datenteil, was (meiner Meinug nach) nicht der beste Ort ist. Eine Einfügung am Ende wäre besser. Markiert man nicht das Projekt, sondern gleich die Klasse, die die inner Klasse enthalten soll, so wird der Name gleich übernommen und man braucht nur noch "Enclosing Type" anhaken.


Javainterpreter wechseln (etwa statt jawaw.exe java.exe)

Konsolfenster wieder einblenden

Es kann vorkommen, daß man die Konsole aus Versehen schließt. So bekommt man sie wieder:

Window -> Show View -> Console

Konstruktoren erzeugen lassen

Beim Anlegen einer Klasse kann man sich bereits die Konstrukturen der Elternklasse auf die Kindklasse übertragen


Konstruktoren nachträglich erzeugen lassen
Source Menu öffnen -> Generate constructors anwählen.

Konstruktoren die eine Variable initialisieren erzeugen lassen
Variable markieren -> Source Menu öffnen -> Generate constructors using fields anwählen.

Hinweis: Mit Hilfe des dabei erscheinenden Dialogs kann man auch Konstruktoren mit mehreren Parametern erzeugen.


Methode aus Methodenaufruf generieren lassen

Eine ganz typische Situation: Hier fehlt mir ein Aufruf einer Methode, die es noch garnicht gibt.

Methodenaufruf codieren -> Fehlermeldung erscheint -> Mit der Maus über dem Namen hovern -> Quickfix bietet Create method an

Anschließend will Eclipse erzwingen, daß die Methode sofort codiert wird. Das kann man abstellen, besser ist es natürlich, dem Hinweis zu folgen.


Ordnen von Code mit Hilfe des Outline-Fensters

Sobald man mehrer Methoden in einer Klasse geschrieben hat, sollte man sie thematisch ordnen. Hier hilft das Outlinefenster, das u.a. alle Methoden in einer Klasse anzeigt. Man markiert einfach die Methode und verschiebt sie. Eclipse übernimmt dann sofort die notwendigen Verschiebungen im Code.


Rechtschreibprüfung abschalten

Eclipse hat eine Rechtschreibprüfung, die in der Grundeinstellung eingeschaltet ist. Dann werden unbekannte Wörter rot unterringelt. Das kann nützlich sein, aber auch störend. So schaltet man sie ab:

Window -> Preferences -> General -> Editors -> Text Editors -> Spelling -> [ ] Enable spell checking

Shortcut für System.out.println();
sysout im Code schreiben, dann CTRL - Space.

Suchen und Ersetzen in einer Code-Datei

Umbenennungen von Dateien, Methoden, Klassen

Datei umbenennen

In Java zieht die Umbennung eines Dateinamens meist eine ganze Reihe von Änderungen nach sich, da der Dateiname oft mit dem Klassennamen übereinstimmt (übereinstimen muß). Dies kann man in Eclipse recht komfortabel erledigen, da Eclipse Abhängigkeiten sucht und diese gleich mitumbenennt.

Dateiname im Package Explorer rechts markieren, rechte Maustaste liefert Kontextmenu -> Refactor -> Rename
Es gibt drei Checkboxen, die man anhaken kann. Die erste ist per default angehakt und aktualisert Referenzen.

Methode umbenennen

Ganz ähnlich geht man vor, wenn man eine Methode umbenennen möchte. Man markiert die Methode im rechten Outlinefenster.

Rechte maustaste liefert wieder Kontextmenu -> Refactor -> Rename

Auch hier wird man den Haken bei "Update references" nicht entfernen. Durch Ausprobieren findet man auch schnell heraus, was "Keep original method as delegate" bedeutet.


Innere Klasse umbenennen

Siehe Methode umbenennen.


"Verlorene" Projekte wieder in den Package Explorer aufnehmen

Wenn man ein Projekt aus dem Package Explorer entfernt kann man den Vorschlag es auch physikalisch zu löschen ablehnen. Um einen Wust von Projekten im Package Explorer zu vermeiden kann das durchaus sinnvoll sein. Leider kann man über das Menu Project -> Open Project nur Projekte öffnen, die im Package Explorer angezeigt werden. Wie man an die Anderen wieder rankommt folgt hier:

Rechtsmausklick auf der Fläche des Package Explorers -> Import -> General
dann im Dialogfenster auswählen:

"existing projects into workspace" -> next (button)

"select root directory" -> browse (button)

im dann erscheinenden Dateidialog den Eclipse Workspace raussuchen -> OK (Button)

dann werden alle Projekte angezeigt und man kann auswählen welche man in den Package Explorer aufnehmen will

-> Finish (Button)
Valid XHTML 1.0 Strict top Back Next Up Home