Gradle 6.0 ist da!

Build Tool: Gradle 6.0 kommt mit verbesserter Java- und Groovy-Kompilierung

Katharina Degenmann

© Shutterstock / Santhosh Manganam

Das Build Tool Gradle hat Version 6.0 erreicht. Teil des Releases waren unter anderem Verbesserungen in der Java- und Groovy-Kompilierung. Überdies bietet das Build Tool nun Java 13 Support und die neuesten C++-Standards. Wir werfen einen Blick auf die neuen Features.

Gradle hat Version 6.0 seines beliebten Build-Tools vorgestellt. Mit Gradle 6.0 sind zahlreiche Features, die in den in den vorherigen Versionen implementiert wurden, stabil und produktionsreif.

Gradle 6.0: Neue Features und Funktionen

Verbesserungen für Java und Groovy

Mit Blick auf das JVM-Ökosystem zählt wohl eine beschleunigte Java- und Groovy-Kompilierung zu den wichtigsten Neuerungen. Um die Folgen einer geänderten Klasse zu analysieren, kann der inkrementelle Compiler nun Klassen ausschließen, die ein Implementierungsdetail einer anderen Klasse sind. Dies begrenzt die Anzahl der Klassen, die neu kompiliert werden müssen.

class A {}

class B {
    static void foo() {
        A a = new A();
        // ... use A
    }
}

class C {
    void bar() {
        B.foo();
    }
}

Wenn A geändert wird, hat Gradle zuvor alle drei Quelldateien neu kompiliert, obwohl B sich nicht so tiefgreifend verändert hat, dass C neu kompiliert werden müsste. In Gradle 6.0 kompiliert Gradle nur A und B neu. Bei komplexen Abhängigkeitsketten kann dies die Anzahl der Dateien, die innerhalb einer Kompilierungsaufgabe neu kompiliert werden müssen, stark reduzieren. Wenn A, B und C alle in verschiedenen Projekten wären, würde Gradle die Neukompilierung von C durch Vermeidung der Kompilierung überspringen.

Java 13

Ebenfalls neu mit an Bord ist der Support für die aktuellste Java-Version, Java 13. Überdies wurde die standardmäßige Unterstützung für Javadoc- und Source JARs bereitgestellt.

Scala und der Zinc-Compiler

In Sachen Scala durfte sich der Zinc-Compiler über eine Aktualisierung freuen und steht nun in Version 1.3.0 zur Verfügung. Der von Gradle unterstützte Zinc-Compiler kann minimal in Version 1.2.0 und maximal in Version 1.3.0 verwendet werden.

Auf der anderen Seite endet mit Gradle 6.0 die Unterstützung des Aufbaus von Scala 2.9 Anwendungen. Das Gradle-Team verspricht sich davon die Behebung einiger inkrementellen Scala-Kompilierungsfehler und Verbesserungen der Leistung.

Plugin-Autoren

Bereits mit Gradle 5.5 wurde das Konzept einer verwalteten Eigenschaft für Aufgaben eingeführt. Mit Gradle 6.0 wird daran angeknüpft. Entwickler, die Gradle-Plug-ins erstellen, können nun auf neue APIs zurückgreifen. Mithilfe der APIs soll das Verbinden von Aufgaben und Eigenschaften einfacher von der Hand gehen. Hierfür bietet Gradle eine Implementierung der Getter und Setter für verwaltete Objekte an. Dies vereinfacht die Implementierung von Plugins, indem ein Teil der Boilerplate entfernt wird.

Mit dem Major Release werden außerdem nützliche Dienste für Arbeiter-API-Aktionen zur Verfügung gestellt und Gradle wird zukünftig bei der Laufzeit alarmschlagen, sollte eine Aufgabe falsch konfiguriert worden sein.

Visual Studio und C++

Im nativen Ökosystem wurde die Unterstützung für Visual Studio 2019 und die neuesten C++-Standards hinzugefügt.

Weitere Informationen

Neben all den Neuer- und Änderungen wurden in Gradle 6.0 insgesamt 130 Issues gefixt. Alles Weitere zu Gradle 6.0 gibt es in den Release Notes.

Geschrieben von
Katharina Degenmann
Katharina Degenmann
Katharina ist hauptberuflich hilfsbereite Online- und Print-Redakteurin sowie Bücher- und Filme-Junkie. Nebenbei ist sie Möchtegern-Schriftstellerin, die heimlich hofft, eines Tages ihr Geld als Kaffee-Testerin zu verdienen. Seit Februar 2018 arbeitet sie als Redakteurin bei der Software & Support Media GmbH, davor hat sie Politikwissenschaft und Philosophie studiert.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
4000
  Subscribe  
Benachrichtige mich zu: