Debugger

Der Debugger zeigt jetzt bei method exit und exception breakpoint die Werte an. Rückgabewerte bzw. Grund der Excepiton können direkt im Debugview eingesehen werden. Diese ist praktisch und erspart teilweise Modifikationen am Code um Rückgabewerte einer Funktion zu erkennen.

Rückgabewerte einer Methode

Exception in einer Methode

Gradle Update unter Eclipse

Hat man Änderungen an dem Buildskript vorgenommen, dann muss man dieses manuell Eclipse mitteilen. Dazu wird im Projekt View wird ein Gradle Projekt über Gradle –> Update Gradle manuell geupdatet. D.h. das Modell wird neu geladen und somit Änderungen an den Dependencies in Eclipse propagiert.

In den Einstellungen (Preferences –> Gradle –> Automatic Project synchronization) kann der Vorgang automatisch bei Änderungen am Buildskript angestoßen werden.

Ist auf dem Linuxsystem keine passende Version für einen Renderer von HTML Seiten vorhanden, so können Webseiten innerhalb der Eclipse Workbench nicht angezeigt werden und der Container zeigt nur eine Fehlermeldung an. Der Xulrunner ist noch nicht auf GTK3 portiert und wird auch nicht mehr weiter entwickelt.

Daher verwende ich den Webkit2 als Renderer. Dazu muss die eclipse.ini der Workbench angepasst werden und webkit2 (webkit2gtk) installiert werden.

Eclipse.ini

-Dorg.eclipse.swt.browser.DefaultType=webkit

Unter Arch Linux muss webkit2 installiert werden

pacman -S webkit2gtk

Verwendet man eine ältere Version des Gradle Wrapper, so kann Gradle –> Refresh Gradle Project folgender Fehler in Eclipse angezeigt werden

unbound classpath container: 'JRE System Library [JavaSE-1.9]' in project 'XXX'

Ursache ist das Eclipse keine JRE für Java 9 finden kann. Es hat sich in Eclispe das Namensschema geändert, so dass eine installierte Java 9 JRE nicht erkannt wird bzw. einen anderen Namen bekommt. Updated man den Wrapper, dann wird beim aktualisieren des Projektes die neue Schreibweise [JavaSE-9] in Eclipse eingetragen und somit auch die JRE erkannt und der Fehler unbound classpath container verschwindet.

Gleiche gilt auch für die neueren Versionen von Java 10 und 11.

Siehe Artikel Wrapper aktualisieren

Gradle Wrapper aktualisieren

Der gradle-wrapper kann mit

./gradlew wrapper --gradle-version=4.3.1 --distribution-type=bin

aktualisiert werden. Es wird in der gradle-wrapper.properties die URL angepasst. Die aktuellste Version kann unter Gradle gefunden werden.

Java 9

Ältere Versionen des Wrappers laufen nicht unter Java 9. Wenn auf dem System gradle installiert ist kann mit:

gradle wrapper --gradle-version=4.5.1
gradle --version

der Wrapper auf eine aktuelle Version angehoben werden. Dies funktioniert auch unter Java 9. Die eigentliche Aktualisierung erfolgt erst bei aufruf des Wrappers mit z.B. ./gradlew –version.

Wenn ein Projekt in Eclipse als Gradle Projekt geführt wird, dann lässt sich dieses nicht per ALT + SHIFT + R einfach umbennen.

Hinweis: Dieses gilt nur wenn der Projektname in der .settings Datei von Gradle festgelegt wird.

Eclispe hat dann ein Problem das Projekt zu synchronisieren und bringt eine Fehlermeldung…

org.eclipse.buildship.core.UnsupportedConfigurationException: Project at '/home/sascha/Eclipse/Workspaces/DW2/demo13' can't be named 'Demo2' because it's located directly under the workspace root. If such a project is renamed, Eclipse would move the container directory. To resolve this problem, move the project out of the workspace root or configure it to have the name 'demo13'.

Hier stimmen die Namen des Projektes in Eclipse mit dem Projektnamen in der Settingsdatei nicht überein. Die Lösung ist zunächst die Namen gleichzustellen und dann das Gradleprojekt zu aktualisieren.

rootProject.name = 'demo13' //

Gradle --> refresh gradle project

Danach kann in der Settingsdatei der neue Name eingetragen werden und erneut aktualisiert werden. Jetzt benennt Eclipse das Projekt erfolgreich um.