Gradle im Praxistest

Schaukeln für Fortgeschrittene


Seit kurzer Zeit steht das neue Build-System Gradle in der ersten finalen Version zur Verfügung. Zu den Konzepten von Gradle und den Vorteilen gegenüber anderen bewährten Build-Systemen wurde viel geschrieben – eine Betrachtung, ob Gradle den Ansprüchen professioneller Softwareprojekte genügt, blieb jedoch oft aus. Es wird Zeit, diese nun nachzuholen.

Die Grundlage aller Projekte für die Erstellung hochqualitativer Software bildet ein Build- System, mit dem aus dem Programmcode sowie den benötigten Ressourcen das auszuführende Programm erstellt wird. Bis vor Kurzem standen Entwicklern und Architekten aus dem Java-Bereich in erster Linie die Build-Systeme Ant und Maven zur Verfügung. Hier hat sich Maven in den letzten Jahren zunehmend durchgesetzt, sodass bei einem Großteil der neu aufgesetzten Projekte die Wahl auf Maven fiel. Zuletzt betrat mit Gradle ein neues Build-System die Bühne, das den Anspruch verfolgt, die Vorteile seiner beiden Vorgänger in sich zu konsolidieren.

Artikelserie

Teil 1: Projektbeschreibung, Entwicklungsumgebung, Anwendungsentwicklung

Teil 2: Qualitätssicherung, CI, umgebungsspezifische Konfiguration

Gradle liegt mittlerweile in einer ersten finalen Version vor und wird allein hierdurch für den Einsatz in Projekten interessanter. Zu Gradle selbst, den Vorteilen und den zugrunde liegenden Konzepten wurde in der Vergangenheit schon des Öfteren berichtet. Ob das Build-System den Ansprüchen professioneller Softwareprojekte genügt, wurde jedoch meistens nicht diskutiert. Diese Ansprüche sind allgemeiner Natur und unterscheiden sich nicht von denjenigen, die an andere Build-Systeme gestellt werden. Im Folgenden soll nicht auf die Frage eingegangen werden, welches von den vorhandenen Systemen das beste ist, sondern ob Gradle die allgemein geltenden Ansprüche erfüllt und die für den Einsatz in professionellen Projekten erforderliche Reife hat.

Ansprüche an ein Build-System

Was aber sind die allgemein geltenden Ansprüche? Im Kontext von Build-Systemen gelten nicht für alle Projekte immer dieselben Anforderungen. Dennoch gibt es eine Menge Kernaspekte, die ungeachtet der eingesetzten Technologien für alle Projekte und die jeweils eingesetzten Build-Systeme relevant sind. Aus Entwicklersicht stellt sich zum Beispiel die Frage nach der IDE-Unterstützung. Muss der Entwickler beispielsweise den Build immer über die Kommandozeile steuern oder bietet die eingesetzte Entwicklungsumgebung entsprechende Hilfestellungen? Von zentraler Bedeutung für...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang