how use gradle build
In diesem Lernprogramm wird beschrieben, wie Sie mit Gradle ein Projekt erstellen und Aufgaben in Groovy schreiben und Aufgaben mit Gradle Wrapper ausführen. Verwenden Sie dazu den Befehl IDE & Build:
Als zeitgenössische Entwickler müssen wir bestimmte Begriffe wie Shift-Left, DevOps, Continuous Integration (CI), Continuous Delivery (CD) usw. kennen.
In diesem Tutorial lernen wir Groovy und Gradle sowie deren Verwendung zum Erstellen von Gradle-Build-Aufgaben bzw. Build-Projekten kennen. Groovy ist eine facettenreiche Sprache - mit einer präzisen, vertrauten und einfach zu verwendenden Syntax für die Java-Plattform, die zum Schreiben von Build- und Automatisierungsaufgaben verwendet werden kann.
Diese Sprache passt gut zu Gradle, einem der beliebtesten Tools zur Integration des Workflows eines Entwicklers in eine CI / CD-Pipeline.
Dieses Tutorial erklärt Gradle für Java-Entwickler. Es enthält Details zur Funktionsweise. Verwendung von Gradle zum Erstellen von in Java geschriebenem Quellcode für die Bereitstellung auf einer beliebigen Plattform.
Es bietet Plugins für die meisten IDEs und erleichtert die schnellere Bereitstellung von Software. Um uns auf dem Weg zum Erlernen der oben genannten Konzepte zu folgen, ist es großartig, wenn Sie sich das Repository von a ansehen Beispielprojekt das haben wir auf Github erstellt.
Was du lernen wirst:
- Systemanforderungen und -voraussetzungen
- Schreiben Sie Ihr erstes Programm in Groovy - Hello World
- Grundlagen der groovigen Sprache
- Was ist Gradle?
- Funktionen und Vorteile der Verwendung von Gradle
- Erstellen Sie ein Gradle-Projekt
- Automatisieren Sie Gradle Build mithilfe von Git-Aktionen
- Fazit
- Literatur-Empfehlungen
Systemanforderungen und -voraussetzungen
Dieser Abschnitt enthält den Schritt zum Installieren einer IDE - IntelliJ IDEA und Java Development Kit (JDK). Die Details zu den Grundkonzepten in der Sprache Groovy, um das Schreiben unserer ersten Build-Aufgabe zu beschleunigen, werden mithilfe eines Code-Snippets erläutert.
Installieren Sie IntelliJ IDEA
Installieren Sie eine IDE (Integrated Development Environment) zum Erstellen des Java-Projekts. Für dieses Tutorial verwenden wir IntelliJ IDEA (Community Edition). Bitte folgen Sie den entsprechenden Links, um es unter Windows / Mac / Linux herunterzuladen und zu installieren.
Windows: Klicke hier
Mac: Klicke hier
Linux: Klicke hier
JDK installieren und einrichten
Laden Sie JDK herunter . Sie müssen sich für ein RedHat-Konto anmelden, um den Schritt abzuschließen. Führen Sie nach dem Herunterladen das Setup aus, um es auf Ihrem Windows-PC zu installieren. Öffnen Sie nach der Installation die Eingabeaufforderung und führen Sie die unten angegebenen Befehle aus, um zu überprüfen, ob es funktioniert oder nicht.
Mit den folgenden Befehlen können Sie feststellen, wo das JDK installiert ist oder nicht.
D: softwaretestinghelp> wo java
D: softwaretestinghelp> wo javac
Lassen Sie uns nun das installierte JDK mit unserer IDE konfigurieren. Öffnen Sie die Plattformeinstellungen in IntelliJ IDEA und fügen Sie das JDK hinzu, indem Sie die folgenden Schritte ausführen. Bitte denken Sie daran, dass dieses JDK für alle Projekte gilt, an denen Sie mit dieser IDE arbeiten werden.
Schritt 1: Fügen Sie das heruntergeladene JDK unter den Plattformeinstellungen wie in der Abbildung gezeigt zum SDK hinzu.
Schritt 2: Aktualisieren Sie das Projekt-SDK in den Projekteinstellungen wie in den Bildern gezeigt
Wie benutzt man arrays.sort in Java?
Nachdem Sie die konfigurierten Einstellungen angewendet haben, erstellen Sie das Projekt bitte einmal mit dem kleinen grünen Hammersymbol in der IDE.
Ein Beispielprojekt einrichten
Es gibt zwei Möglichkeiten, um mit dem Projekt zu beginnen. Wir können die Projekt-Zip-Datei entweder von der Github-Projektseite herunterladen und als Gradle-Projekt in die Intellij IDEA importieren oder das Projekt aus dem Github-Repository klonen.
Die Schritte zum Klonen des Projekts von Github sind nachstehend aufgeführt:
Öffnen Sie die IDE, indem Sie auf das Verknüpfungssymbol auf Ihrem Desktop doppelklicken. Bitte schließen Sie alle vorhandenen Projekte, falls diese bereits geöffnet sind. Bitte denken Sie daran, dass das Git-Plugin standardmäßig mit IntelliJ IDEA gebündelt ist. Bitte installieren Sie es daher nicht.
Schritt 1: Klicken Sie im Begrüßungsbildschirm der IDE auf Holen Sie sich von der Versionskontrolle .
Schritt 2: Das ____ bereitstellen Github-Repository-URL und klicken Sie auf Klonen.
Schritt 3: Klicke auf Ja wenn die Eingabeaufforderung für die Checkout-Datei angezeigt wird.
Schritt 4: Warten Sie, bis der Hintergrundprozess abgeschlossen ist, und überprüfen Sie die Ausgabe.
Schritt 5: Klicken Sie auf den gefalteten Projektbereich, um die Projektstruktur im Explorer anzuzeigen.
wie man eine XML-Datei öffnet
Schreiben Sie Ihr erstes Programm in Groovy - Hello World
Öffnen Sie im Projekt die Gradle-Builddatei mit dem Namen build.gradle Verwenden Sie den Datei-Explorer Ihrer IDE und schreiben Sie den unten angegebenen Code am Ende der Datei.
task helloWorld { doLast { println('Hello, World!') } }
Führen Sie nun die erste Aufgabe aus, indem Sie im Kontextmenü des Symbols für die Spielaufgabe auf Ausführen klicken, und beobachten Sie die Ausgabe der println eingebaute Methode von Groovy. Wir können benutzen 'STRG + UMSCHALT + F10' auch. (Bitte beachten Sie das Bild unten)
Die Ausgabe sollte ähnlich wie die oben gezeigte aussehen.
Grundlagen der groovigen Sprache
Nachdem Sie gelernt haben, wie Sie Ihr erstes Programm in Groovy erstellen, können wir die Grundlagen der Sprache beschleunigen und kennenlernen. Dieser Abschnitt behandelt Konzepte wie Variablennamen, Syntax, Operatoren, Methoden / Funktionen / Closures usw.
Wir werden auch die Konzepte behandeln, die aus Projektsicht relevanter sind, z. B. den Zugriff auf die Eigenschaften eines Projekts und den Import von Abschlüssen / Funktionen, die in einem anderen Projekt geschrieben sind build.gradle Datei.
Beachten Sie das unten angegebene Code-Snippet und die Kommentare, um mehr über verschiedene Konzepte der Sprache zu erfahren. Dieses Code-Snippet ist sehr praktisch für eine schnelle Anleitung und eine Überarbeitung der Konzepte von Groovy.
// Primer on Groovy def var1 = 'var1' // A string variable declared and assigned outside a closure/function def var2 = 4 // An integer // Both of the above given variables are of type Object task task1 { doLast { println('Hello, World!') // A single line comment /* A Multi line comment Print a stored variable. Strings can be concatenated. Parentheses are not mandatory */ println var1 + ' is my variable ' println var1 + 2 // adding a digit to a string - No string conversion required. // operators for strings and numbers println(var2 + 3) def var3 = var2 + 2 // type of var3 is integer and var2 and var1 are Objects println(var3 * var2) // multiplication print(var3 / var2 + '
') // division prints float and observe the concatenation of new line '
' def mylist = (1, 2, 3) // creating a list // for loop on list items for (def i=0; i <= mylist.size() -1 ; i++){ // loop using for println(mylist(i)) } // While loop on list items def i=0 while (i<=mylist.size() - 1) { println(mylist(i)) i++ } } }
Beachten Sie in beiden Schleifen, dass die Liste einen auf Null basierenden Index hat. Weitere Details finden Sie unter Groovy .
Lassen Sie uns nun etwas über Gradle lernen und sehen, wie eine Aufgabe ausgeführt wird.
Was ist Gradle?
Es ist ein Build-Automatisierungssystem. Es unterstützt das Erstellen von Projekten in mehreren Sprachen. In diesem Tutorial verwenden wir Java. In diesem Abschnitt wird die Methode zum Ausführen von Gradle-Befehlen über die Befehlszeile erläutert. Wir werden es zum Erstellen, Testen und Bereitstellen unseres Beispielprojekts verwenden.
Gradle-Abhängigkeiten
Möglicherweise wissen Sie bereits, wie wichtig es ist, Abhängigkeiten in einem Open-Source-Softwareprojekt zu installieren. Gradle kann nach Abhängigkeiten von öffentlichen Repositorys wie Maven, Jcenter und Google suchen.
Erwähnen Sie diese Repositories in build.gradle Datei wie unten gezeigt:
repositories { mavenCentral() jcenter() google() }
Erwähnen Sie nun die Abhängigkeiten zur Kompilierungszeit wie unten gezeigt.
dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59' }
Die genannten Abhängigkeiten werden automatisch heruntergeladen und vom Gradle-Plugin in den CLASSPATH des Projekts aufgenommen. Überprüfen Sie die heruntergeladenen Abhängigkeiten im Projektexplorer der IDE.
Überprüfen Sie die Gradle-Version mit dem unten angegebenen Befehl.
Funktionen und Vorteile der Verwendung von Gradle
Im Folgenden sind einige der Funktionen aufgeführt, die zur einfachen Standardisierung und Einführung von Gradle als Teil von DevOps in einer Organisation beitragen.
- Es verwendet eine DSL-basierte Sprache namens Groovy. Es ist einfacher, Build-Aufgaben in Groovy als in XML zu schreiben. Darüber hinaus sind XMLs umständlich und nicht leicht zu lesen. Groovy ist jedoch leichter zu lernen und zu lesen.
- Es unterstützt Creation Builds für Projekte, die sowohl auf monolithischen als auch auf Microservices-Architekturen basieren.
- Es kann verwendet werden, um mehrere Artefakte wie Dokumente oder APIs zu erstellen. Implementierungs-Jars usw. und veröffentlichen sie als Teil desselben Builds.
- Es hat ein ziemlich mächtiges Sprachkonstrukt, um die voneinander abhängigen Aufgaben als Teil der Builds zu ordnen.
Es gibt viele weitere Funktionen, mit denen die Teams ihre Builds anpassen und gleichzeitig die Software mit höherer Qualität verpacken können. Weitere Details zu den Funktionen werden angegeben Hier .
Lassen Sie uns nun fortfahren und eine Gradle-Build-Aufgabe ausführen.
Führen Sie eine Gradle-Aufgabe aus
Führen Sie den unten gezeigten Befehl im Stammverzeichnis des Projekts aus, um die Build-Task mit dem Namen task1 auszuführen.
D: softwaretestinghelp gitrepo>. Gradlew.bat task1
Überprüfen Sie die Ausgabe wie unten gezeigt.
Erstellen Sie ein Gradle-Projekt
In diesem Abschnitt werden wir die Projektstruktur durchgehen, die verschiedenen Komponenten verstehen und das Projekt erstellen.
Struktur des Beispielprojekts
Das zur Diskussion stehende Beispielprojekt hat eine src Ordner mit zwei Hauptverzeichnissen (Ordnern) nämlich. Haupt und Test. Das Hauptverzeichnis enthält Java-Quellcode für eine Beispielbefehlszeilenanwendung namens HelloWorld.
Die HelloWorld-Klasse verfügt über zwei Methoden, d. H. Die Hauptmethode, die das erste Argument aus der angegebenen Liste von Argumenten druckt, und eine method1-Methode, die das erste Argument druckt, das mit den ersten drei Zeichen des zweiten Arguments verknüpft ist.
Der Testordner verfügt über eine JUnit-Testklasse, die Tests zum Testen der oben genannten Methoden in unserer Anwendung enthält. Bitte überprüfen Sie den Quellcode dieser Tests.
Das Beispielprojekt verfügt außerdem über einen Gradle-Wrapper-Ordner. Sie müssen die erwähnte Gradle-Wrapper-Version verwenden, während Sie Ihre Build-Aufgaben ausführen.
Die Version von Gradle ist sehr wichtig. Wenn Entwickler ihren Code freigeben möchten, ist es immer von Vorteil, einen Wrapper zusammen mit den Projektdateien freizugeben. Dies spart viel Zeit, da der Wrapper die deklarierte Version des Gradle automatisch herunterlädt.
Beispiele für Build-Aufgaben
Die Dokumentation des Codes wird als eines der wichtigsten Attribute eines Entwicklers angesehen. Es ist üblich, die Dokumentation in zu teilen html Format. Gradle hilft beim Generieren Javadocs im html Projekte formatieren. Mit dem folgenden Befehl können wir Javadocs generieren.
D: softwaretestinghelp gitrepo>. Gradlew.bat javadoc
Bitte überprüfen Sie die Javadoc Klicken Sie im Projekt auf Verzeichnis erstellen, und Sie sollten ähnliche Ergebnisse wie in der Abbildung unten sehen.
Bitte folgen Sie den Javadoc Styleguide unter diesem Link beim Schreiben der Java-Dokumentation.
Ändern wir nun die Datei build.gradle, um auch die Dokumentation für Testressourcen zu generieren.
Aktualisieren Sie die Datei build.gradle mit dem unten gezeigten Snippet
javadoc { classpath += sourceSets.test.compileClasspath source += sourceSets.test.allJava }
Führen Sie den Befehl Gradle javadoc erneut aus, um die Dokumentation für Haupt- und Testquellen zu generieren.
Weitere Details zu den Gradle-Build-Aufgaben finden Sie hier Hier .
Der Befehl, weitere Gradle-Aufgaben zu kennen, ist unten angegeben.
D:softwaretestinghelpgitrepo> .gradlew.bat tasks
Lassen Sie uns nun das Projekt erstellen.
Erstellen Sie das Gradle-Projekt
Führen Sie die folgenden Schritte aus, um das Beispielprojekt über die Befehlszeile zu erstellen:
- Ändern Sie den Projektpfad.
- Verwenden Sie den folgenden Befehl, um das Projekt zu erstellen.
Sie können das Projekt jedoch auch erstellen, indem Sie auf das kleine Hammersymbol in der IDE klicken.
D:softwaretestinghelpgitrepo> .gradlew.bat build
Die Ausgabe des Build-Befehls erfolgt wie unten gezeigt.
Fehler in den Build-Run-Ergebnissen sind für den Zweck dieses Lernprogramms beabsichtigt und können vernachlässigt werden.
Wenn Sie die Ergebnisse der Tests anzeigen möchten, die im Rahmen dieses Builds ausgeführt wurden, können Sie den Berichtsordner überprüfen (siehe Abbildung unten).
Um die Ergebnisse zu überprüfen, können Sie die Datei index.html in einem Browser öffnen.
Automatisieren Sie Gradle Build mithilfe von Git-Aktionen
Als Entwickler müssen wir unsere Workflows einrichten, um unsere Projekte zu erstellen, zu testen und zu veröffentlichen, um mit dem Betriebsteam zusammenzuarbeiten.
Darüber hinaus kann die Einrichtung einer eigenen Umgebung eine entmutigende Aufgabe sein und sich möglicherweise auf unsere Produktivität auswirken. Mit dem Aufkommen einer neuen DevOps-Kultur müssen wir unsere Workflows automatisieren, um die Herausforderungen zu reduzieren, die sich aus Build-Fehlern ergeben.
In der Zwischenzeit müssen Softwareprojekte mit Entwicklern, die geografisch verteilt sind, mithilfe von SCM-Software wie Git zusammenarbeiten.
Vielen Dank an Github Actions. Jetzt können Sie eine zusätzliche Registerkarte in jedem von Ihnen erstellten Github-Repository sehen. Sie können Ihre Entwicklungsworkflows erstellen und bei jedem Github-Ereignis wie Push, Release, Pull_Request usw. ausführen. Dies ist revolutionär, wenn es darum geht, der Entwickler-Community die Leistung von CI / CD zu verleihen.
Öffnen Sie die Git Actions-Konfigurationen unter .github / workflows / gradle.yml Datei im Projekt. Beachten Sie, dass wir unser Projekt unter Windows entwickeln und es in Git Actions unter ubuntu_latest testen.
kostenlose Firewall-Software für Windows 10
Github Actions verfügt auch über Community-basierte Workflows, die wir nutzen und die Geschwindigkeit der Bereitstellung Ihres Projekts für Kunden erhöhen können. Basierend auf dem Status Ihres Builds können Sie entscheiden, ob Sie das Projekt freigeben möchten oder nicht. Wir haben das Beispiel einer Vorabversion des Repositorys des Beispielprojekts gegeben.
Eine optionale Übung
Im Folgenden finden Sie einige Schritte, die Sie ausprobieren können.
- Erstellen Sie ein neues Repository in Github.
- Fügen Sie im gradle_sample-Projekt eine Referenz der neuen Fernbedienung hinzu.
- Verwenden Sie die Befehle, um die Änderungen im neuen Repository zu veröffentlichen.
- Beobachten Sie die Ergebnisse für Ihren Gradle-Build unter Git-Aktionen.
Fazit
Gradle wird von Teams in Unternehmen wie LinkedIn, Adobe, Netflix usw. verwendet und ist ein großartiges Werkzeug, um es zu meistern. Die Arbeit mit Gradle ist viel einfacher als die Arbeit mit anderen Build-Tools wie Maven und Ant.
In diesen Tagen dreht sich alles um Geschwindigkeit und Beweglichkeit. Das Erlernen von Gradle und Groovy kann Ihnen dabei helfen, die DevOps-Prinzipien einfacher anzuwenden.
Zusammenfassend haben wir Konzepte zur Erstellung eines Gradle-Projekts, zum Schreiben von Build-Aufgaben in Groovy und zum Ausführen von Aufgaben mit Gradle-Wrapper während der Entwicklung mit dem Befehl IDE und Gradle-Build behandelt.
Wir haben den Build auch auf einer anderen Zielplattform wie ubuntu_latest getestet. Wir können es mit einem Build-Status verwenden, der bei der Entscheidung für eine Projektfreigabe hilfreich sein kann.
Wenn Sie ein Automatisierungstechniker sind, der Selenium Webdriver verwendet, lesen Sie unbedingt unser bevorstehendes Tutorial zum Konfigurieren und Einrichten eines Selenium-Projekts mit Gradle.
Hoffe, dieses Tutorial hätte Ihr Wissen über Gradle Concepts bereichert!
Literatur-Empfehlungen
- Gradle Vs Maven und Maven Plugins
- So erstellen Sie ein Gradle-Projekt mit Selen
- Spock Tutorial: Testen mit Spock und Groovy
- So schreiben Sie ein einfaches Groovy-Skript in SoapUI - SoapUi Tutorial # 6
- Verwendung von Eigenschaften in SoapUI Groovy Script - SoapUI Tutorial # 7
- Erfahren Sie mehr über SoapUI Groovy Scripting-Konzepte - SoapUI Tutorial # 9
- So behandeln Sie Ausnahmen in SoapUI Groovy-Skripten - SoapUI Tutorial # 11
- Verwendung des Maven Build Automation Tools und des Maven Project Setup für Selen - Selenium Tutorial # 24