Gradle - Beginner's Workshop (german)

  • View
    1.363

  • Download
    10

Embed Size (px)

DESCRIPTION

A Step-By-Step Introduction to Gradle leading to a full build script for a project. This presentation is in german

Transcript

  • 1.Gearconf - Gradle Workshop Gradle fr Einsteiger

2. Dr. Joachim Baumann Ausbildung 1986-1992 1994-1999 1999-2000 InformaFk UniversiYtStuYgart PromoFon UniversittStuYgart,UniversittGenf Postdoc UniversittStuYgartReferenzen(Auszug) nnBeruicherWerdegang1993 ANTBoschTelecom,Soware-Entwickler 2000 COSSSowaretechnikAG,BereichsleiterProduktentwicklung undForschung n 2001 JunidasGmbH,Geschsfhrer 2005 XinarisGmbH,Geschsfhrer 2007 CirquentGmbH,LeitungCompetenceCenteriBPM,Director Shoring 2012 codecentricAG,GeschsfhrerFrankfurt nSchwerpunkte n n n n n nArchitekturgroerSysteme Open-Source-Produkte KommunikaFonsnetze,MobileCompuFng,VerteilteSysteme, Datenbanken Training,Coaching,Vortrge AgileMethoden BigDataNrnbergerVersicherungsgruppe,Nrnberg p AbsatzplanungssystemderNrnbergerVersicherung p TechnischerProjektleiter p Architekt FIDUCIAITAG,Karlsruhe p Architekturberatung p bernahmekriFscherProjekte p Qualittssicherung p Coaching NTTDATA,Tokyo p EntwurfeinerneuenagilbasiertenMethodefr24- StundenEntwicklung p VerikaFonderMethodeineinemvon3 Vergleichsprojekten p PreisfrdasProjektvonNTTDATA ArFkel,Bcher,Vortrge p 3Bcher p ber40ArFkel p Vortrgeaufint.unddeutschenKonferenzen p Beispiele Groovy:GrundlagenundfortgeschriYene Techniken,d.punktVerlag,600S. Groovy:GrundlageniniX-SonderheJava Kompakt1/2009 Gradle:EinkompakterEinsFegindasBuild- Management-System,d.punkt-Verlag,260S. 3. codecentric auf einen Blick Das Unternehmen codecentric AG Europaweit 10 Standorte 200 Spezialisten 4 Bereiche Beratung Agile Software Factory Performance Solutions Meettheexperts (Schulungen & Workshops)Hamburg Niederlande Berlin Dsseldorf Solingen Frankfurt Karlsruhe Mnchen Schweiz Bosnienund HerzegowinaSerbienDatum / Unternehmensvorstellung3 4. Werte der Codecentric 5. Erwartete Funktionalitt eines Build-Management-Systems bersetzung von Quelltexten Linken der Ergebnisse Checkout der Quelltexte aus dem Versionsverwaltungssystem (kann ausgelagert werden) Setzen von Tags (kann ausgelagert werden). Ausfhren verschiedener Arten von Tests. Beispiele sind: Unit-Tests fr einzelne Klassen Modul- oder Komponententests Integrationstests Funktionale und nichtfunktionale Systemtests Automatisierte Akzeptanztests Detaillierte Test-Reports, die die Testergebnisse bersichtlich zusammenfassen. Packen des Resultats (z.B. eine Jar-, War- oder Ear-Datei) Transfer des Resultats zu den verschiedenen Testsystemen und Ausfhrung entsprechender Testarten (hug durch Build-Server bernommen). Untersttzung fr polyglotte Projekte. Erzeugung von Dokumentation und Release Notes. 6. Wnsche an ein Build-Management-System Explizite Untersttzung des Workows, der durch das Build- ManagementSystem implementiert wird. Leichte Anpass- und Erweiterbarkeit des Workows, um sich an lokale Vorgehensmodelle anpassen zu knnen. Leichte Lesbarkeit und selbsterklrende Notation der Sprache des Build-Skripts. Verwendung von Konventionen, um vernnftige Vorgabewerte fr die verschiedenen Schritte des Workows zu haben (wie zum Bei-spiel die Orte, an denen sich die Quelltexte benden). Leichte nderbarkeit der Vorgabewerte fr die Anpassung an die lokale Umgebung. Inkrementeller Build, der erkennt, welche Artefakte schon erzeugt sind. Parallelisierung von unabhngig ausfhrbaren Schritten des Workows, um die Wartezeit so kurz wie mglich zu halten. Zugriff auf alle Artefakte, die durch den Build erzeugt wurden. Status-Reports, die den aktuellen Zustand des Builds zusammenfassen. 7. Gradle fr Einsteiger Wichtig: Selbermachen, nicht zuschauenInstallationGrundlagenKongurations- und AusfhrungsphaseKurzberblick GroovyPlug-ins - GrundlagenEin Verffentlichung der ArtefakteProjekt Verzeichnisstruktur Abhngigkeiten Manipulation der Jar-Datei Tests Qualittssicherung 8. Grundlagen von Gradle Gradle verwendet Build-Skripte, die build.gradle heienJedes Build-Skript ist ein Groovy-SkriptZwei sehr wichtige Prinzipien Convention over Conguration Dont Repeat YourselfGradle erzeugt ein dynamisches Modell des Workows in Form eines DAGAlles ist nderbartsettseTelipmocdliubelipmoc elbmessa 9. Installation Herunterladen von Java www.javasoft.comHerunterladen von Gradle www.gradle.orgOptional Groovy groovy.codehaus.org Installation unter Windows: Verzeichnis Program FilesGradlegradle-1.8 Installation unter OS X: /Library/Gradle/gradle-1.8 Installation unter Linux: /usr/local/Gradle/gradle-1.8 Symbolischen Link setzen Pfad setzen Texteditor ShellFalls noch viele herunterladen mssen, dann ber USB-Stick 10. Kongurationsphase Es wird das Gradle-Build-Skript ausgefhrt Die Groovy- und DSL-Befehle kongurieren das Objektgeecht Das Projekt-Objekt ist die Wurzel des Geechts Wird direkt zur Verfgung gestellt Erzeugen neuer Tasks, die ausgefhrt werden knnenErstes Skript in der Datei build.gradle println "Hallo aus der Konfigurationsphase" 11. Ausfhrungsphase Fhrt alle aufgerufenen Tasks aus (normalerweise Kommandozeile)Vorher werden alle Tasks ausgefhrt, von denen dieser abhngig istHierfr wird der DAG ausgewertet, um die Abhngigkeiten zu bestimmen 12. Denition eines Tasks Erhlt eine Kongurations-Closure (optional) als Argument, alternativ direkte Argumente Mit