Erstellen und Veröffentlichen von Artefakten mit Gradle und Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Gradle ist ein beliebtes Buildtool für Java-Anwendungen und das primäre Buildtool für Android. Mithilfe von Azure Pipelines können wir die Gradle-Aufgabe zu unserer Builddefinition hinzufügen und unsere Buildartefakte erstellen und veröffentlichen.

Voraussetzungen

Um sicherzustellen, dass alle Voraussetzungen erfüllt sind, führen Sie den folgenden Befehl in einer Eingabeaufforderung mit erhöhten Rechten aus, um zu überprüfen, welche Java-Version auf Ihrem Computer installiert ist.

java -version

Wenn der obige Befehl keine Java-Version zurückgibt, stellen Sie sicher, dass Sie die Java JDK- oder JRE-Instanz zuerst installieren.

Um die Installation von Gradle zu bestätigen, führen Sie den folgenden Befehl an einer Eingabeaufforderung mit erhöhten Rechten aus:

gradle -v

Einrichten der Authentifizierung

  1. Wählen Sie Benutzereinstellungen und dann Persönliche Zugriffstoken aus.

    Screenshot: Erstellen eines persönlichen Zugriffstokens

  2. Wählen Sie Neues Token aus, und füllen Sie dann die erforderlichen Felder aus. Stellen Sie sicher, dass Sie den Bereich Verpacken>von Lesen & Schreiben auswählen.

    Screenshot: Erstellen eines neuen persönlichen Zugriffstoken

  3. Wählen Sie Erstellen, wenn Sie fertig sind.

  1. Kopieren Sie Ihr Token, und speichern Sie es an einem sicheren Ort.

  2. Erstellen Sie eine neue Datei in Ihrem .gradle-Ordner, und nennen Sie sie gradle.properties. Der Pfad zum Gradle-Ordner befindet sich in der Regel in %INSTALLPATH%/gradle/user/home/.gradle/.

  3. Öffnen Sie die gradle.properties-Datei in einem Text-Editor, und fügen Sie das folgende Schnipsel hinzu:

    vstsMavenAccessToken=<PASTE_YOUR_PERSONAL_ACCESS_TOKEN_HERE>
    
  4. Speichern Sie Ihre Datei, wenn Sie fertig sind.

Erstellen von Projekten mit der Gradle CLI

  1. Öffnen Sie die Datei build.gradle, und stellen Sie sicher, dass sie mit Folgendem beginnt:

    apply plugin: 'java'
    
  2. Fügen Sie der Datei build.gradle das folgende Codeschnipsel hinzu, um das Artefakt während des Builds herunterzuladen. Ersetzen Sie die Platzhalter durch Ihre groupID, artifactID und versionNumber. Beispiel: `compile(group: 'siteOps', name: 'odata-wrappers', version: '1.0.0.0')

    dependencies { 
        compile(group: '<YOUR_GROUP_ID>', name: '<ARTIFACT_ID>', version: '<VERSION_NUMBER>')  
    } 
    

Um dies zu testen, können wir eine beispielhafte Java-Konsolen-App erstellen und mit Gradle aufbauen.

public class HelloWorld { 
    public static void main(String[] args) { 
        System.out.println("Hello, world!"); 
    } 
} 

Führen Sie den folgenden Befehl aus, um Ihr Projekt zu erstellen. Die Buildausgabe sollte Folgendes zurückgeben: BUILD SUCCESSFUL

gradle build

Verwenden von Gradle in Azure-Pipelines

  1. Führen Sie den folgenden Befehl aus, um den Gradle-Wrapper gradlew zu erstellen.

    gradle wrapper
    
  2. Pushen Sie Ihre Änderungen an Ihren Remotebranch. Diese Datei wird später benötigt, wenn wir die Gradle-Aufgabe hinzufügen.

  3. Navigieren Sie zu Ihrer Pipelinedefinition. Wenn Sie keine besitzen, erstellen Sie eine neue Pipeline, wählen Sie Klassischen Editor verwenden aus, und wählen Sie dann die Gradle-Vorlage aus.

    Screenshot der Verwendung der Gradle-Pipelinevorlage

  4. Sie können die Standardeinstellungen mit der gradlew build-Aufgaben verwenden.

    Screenshot der Gradle-Aufgabe

  5. Die Aufgabe Buildartefakte veröffentlichen veröffentlicht unser Artefakt in Azure Pipelines.

    Screenshot der Aufgabe zum Veröffentlichen von Artefakten

  6. Wählen Sie Speichern und in Warteschlange einreihen aus, wenn Sie fertig sind.

  7. Sie können Ihr veröffentlichtes Artefakt in der Pipelinezusammenfassung anzeigen, sobald die Ausführung abgeschlossen ist.

    Screenshot: Anzeigen des veröffentlichen Artefakts in der Pipelinezusammenfassung