Vorletzter Stopp vor den Release Candidates

Eclipse Neon (4.6) erreicht 6. Meilenstein

Dominik Mohilo

© Shutterstock.com/jörg röse-oberreich

Mit dem sechsten Milestone erreicht der Eclipse-Release-Train „Neon“ die vorletzte Haltestelle, bevor der erste Release Candidate veröffentlicht wird. Wie üblich, fährt der Zug pünktlich nach Fahrplan. Wir haben uns die Highlights des aktuellen Builds angeschaut.

Plattform

Autoscale für das User Interface

Das Standard Widget Toolkit (SWT) unterstützt nun Autoscale. Auf hochauflösenden Monitoren werden Symbole jetzt auch unter Windows und Linux – entsprechend zum Retina-Support für OS X – automatisch proportional zur Auflösung skaliert.

Autoscale für Windows und Linux (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Autoscale für Windows und Linux (Bildquelle: Eclipse New and Noteworthy)

Wer sich an die kleinen Symbole gewöhnt hat und die minimalistische Darstellung beibehalten will, der kann dieses Feature unter Windows und GTK auch abstellen. Dazu muss in der eclipse.ini der VM-Parameter -Dswt.enable.autoScale auf false gestellt werden. Alternativ tippt man in die Kommandozeile zunächst -vmargs und dann -Dswt.enable.autoScale=false ein. Mac-Nutzern sind die Hände gebunden, denn dort wird das Autoscaling vom Betriebssystem festgelegt.

Da manche Bilder nach der Skalierung nicht besonders schön aussehen, geht die Entwicklung an diesem Feature weiter; erste Verbesserungen sind im letzten Milestone zu erwarten. Außerdem wurde bekannt gegeben, dass an einer Unterstützung für hochauflösende Bilder im Plattform-UI gearbeitet wird. Dadurch soll es zukünftig ohne Codeänderungen möglich sein, hochauflösende Bilder zu implementieren.

Ein moderneres Welcome

Mit M6 wird für den Startscreen Welcome das neue Solstice-Theme eingeführt, das dank modernen Design die Orientierung erleichtern soll. Außerdem ist für Welcome nun die neue Quadranten-basierte Root Page qroot etabliert worden, deren neue befehlsgetriebene Sektion über den Erweiterungspunkt org.eclipse.ui.intro.quicklinks definiert wird. Die sogenannten Quicklinks sollen, so ist es angedacht, von den Produktbesitzern bestückt werden.

Der neue Welcome-Screen (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Der neue Welcome-Screen (Bildquelle: Eclipse New and Noteworthy)

Die Rückkehr der Welcome Launchbar

In den Eclipse-Versionen 3.x wurde die Welcome-Seite bei einem Klick auf den „Go to Workbench“-Button in die Windows-Leiste minimiert. Für die Version 4.6 wurde diese Verhaltensweise nun reaktiviert.

Die Welcome Launchbar (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Die Welcome Launchbar (Bildquelle: Eclipse New and Noteworthy)

Java Development Tools (JDT)

Neue Optionen für den Code Formatter

Im Reiter Line Wrapping ist es nun möglich Wrapping-Regeln für for-Loop-Header zu steuern.

Wrapping-Regeln im Code Formatter steuern. (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Wrapping-Regeln im Code Formatter steuern. (Bildquelle: Eclipse New and Noteworthy)

Das Feature Align fields in columns im Reiter Indentation ist nun so konfigurierbar, dass es durch leere Zeilen voneinander abgegrenzte Gruppierungen erkennt und diese unabhängig voneinander ausrichtet.

Gruppierungen im Code Formatter. (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Gruppierungen im Code Formatter. (Bildquelle: Eclipse New and Noteworthy)

Im Reiter New lines ist es mit M6 möglich zu bestimmen, neue Zeilen erst nach Annotationen zu enum-Konstanten einzufügen.

Neue Zeilen erst nach Annotationen zu enum-Konstanten. (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Neue Zeilen erst nach Annotationen zu enum-Konstanten. (Bildquelle: Eclipse New and Noteworthy)

Verbesserte Null-Analyse generischer Daten

Wie schon im fünften Milestone wurde die Null-Analyse verbessert, beziehungsweise erweitert. Die sogenannte „pessimistische Analyse für freie Type-Variablen“ ist nun verfügbar und betrifft die Implementors von generischen Typen.

Die pessimistische Analyse. (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Die pessimistische Analyse. (Bildquelle: Eclipse New and Noteworthy)

Um Clients zu erlauben, eine derartige generische Klasse mit einer der Typen @NonNull oder @Nullable als Ersatz für die freie Type-Variable <T> zu instanziieren, muss die Implementation dieser Klasse das Worst-Case-Szenario in beiden Richtungen berücksichtigen: Um einer @NonNull-Type vorauszugreifen muss jedes Feld, das zu einer freien Type-Variable typisiert wurde, mit einem non null-Wert initialisiert werden und null ausgeben, wo T als ungültig erachtet wird. Um einer @Nullable-Type vorauszugreifen muss vor jeder Dereference ein null check durchgeführt werden.

Konfiguration der pessimistischen Analyse. (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Konfiguration der pessimistischen Analyse. (Bildquelle: Eclipse New and Noteworthy)

Zudem wurde eine kleine Utility Class mit Namen org.eclipse.jdt.annotation.Checks in das Bundle org.eclipse.jdt.annotation_2.1.0 eingefügt, das die null-Sicherheit verbessern soll.

Plug-in Development Environment (PDE) und Plattform-Entwicklung

OSGi Declarative Services Annotations

Die PDE unterstützt nun OSGi Declarative Services Annotations und erstellt und updatet Declarative-Services-Komponentenbeschreibungsdateien aus einer zugehörigen und annotierten Java-Quelle. Dies geschieht, ohne dass im jeweiligen Projekt ein zusätzlicher Builder konfiguriert sein muss.

Annotiert man nun die Component Implementation Classes mit @Component oder jegliche Reference-Bind-Methoden mit @Reference, wird die PDE sämtliche Annotationen validieren und die entsprechenden Component-Descriptor-Dateien generieren. Probleme bei der Validierung werden hervorgehoben und gemeldet.

Um das Feature verwenden zu können, muss die Funktion Generate descriptors from annotated Sources unter DS Annotations aktiviert werden. Dieser Menüpunkt ist unter Project Properties → Plug-in Development zu finden.

OSGi Declarative Services Annotations (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

OSGi Declarative Services Annotations (Bildquelle: Eclipse New and Noteworthy)

Tracing-Dialog nun mit Tooltipps

Im Tracing-Tab der Eclipse-Startkonfiguration haben die verschiedenen Optionen nun Tooltipps, die zusätzliche Informationen zu der jeweiligen Option anzeigen.

Tooltipps im Tracing-Dialog. (Bildquelle: https://www.eclipse.org/eclipse/news/4.6/M6/)

Tooltipps im Tracing-Dialog. (Bildquelle: Eclipse New and Noteworthy)

Diese Informationen bezieht das Feature aus den Kommentaren, die in der .options-Datei des deklarierten Bundles hinterlegt sind.

API für die Festlegung von Link-Farben

Das neue API org.eclipse.swt.widgets.Link#setLinkForeground(Color) ist ebenfalls Teil des M6. Mit ihm lässt sich die Farbe für einen als Hyperlink markierten Text in einem Link-Widget festlegen. Ebenfalls neu hinzugefügt wurde der damit korrespondierende Getter Link#getLinkForeground(), der die Farbe des Link-Textes im Link-Widget zurückgibt. Unter der Bezeichnung Snippet 182 ist ein Beispiel zu finden.

Auf der New-and-Noteworthy-Seite ist eine komplette Übersicht der neuen Features zu finden, herunterladen kann man sich den aktuellen Milestone über die Download-Seite der Eclipse Foundation.

Aufmacherbild: number six rock under cloudy blue sky – 3d illustration von Shutterstock / Urheberrecht: jörg röse-oberreich

Verwandte Themen:

Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: