Einstieg in Maven-Feeds und-Artefakte

Azure DevOps Services | TFS 2018

Dieser Schnellstart führt Sie durch das Einrichten von Maven zum Veröffentlichen und Verwenden von Artefakten aus dem Feed.

In dieser Anleitung wird davon ausgegangen, dass Sie Azure Artifacts bereits eingerichtet haben. Weitere Informationen zum Lizenzieren der Erweiterung finden Sie unter Erste Schritte mit Azure Artifacts .

Hinweis

Azure Artifacts ist eine Erweiterung, die in TFS 2017 oder neuer vorinstalliert wird (Maven ist nur in 2018 oder höher verfügbar). Wenn Sie aus Ihrer Organisation entfernt wurde, können Sie Sie über den Visual Studio Marketplaceinstallieren.

Voraussetzungen

  1. Apache Maven ist installiert. Sie können Sie aus dem Apache Maven-Projektherunterladen.

  2. Sie haben Azure Artifacts in Ihrer Organisation installiert.

Erstellen eines Feeds

Sie haben bereits einen Feed? Fahren Sie mit dem nächsten Schritt fort.

Mit Azure Artifacts können Sie zwei Arten von Feeds erstellen: projektbezogene und im Bereich der Organisation bezogene Feeds. Alle öffentlichen Feeds sind projektbezogen und erben die Sichtbarkeitseinstellungen des hostingprojekts. Standardmäßig handelt es sich bei allen Feeds, die mithilfe der Webbenutzer Oberfläche erstellt werden, um einen projektbezogenen Feed wie folgt.

  1. Navigieren Sie in Ihrem Projekt zu Azure Artifacts.

    Gehe zu Azure Artifacts

  2. Wählen Sie Feed erstellen aus.

    Schaltfläche für neuen Feed

  3. Benennen Sie Ihren Feed, und wählen Sie dessen Sichtbarkeit, Upstreamquellen und Bereichs Einstellungen aus.

    Dialogfeld „Neuer Feed“

  4. Wenn Sie fertig sind, wählen Sie Erstellen aus.

Hinweis

Durch das Aktivieren von Upstreamquellen können Sie Pakete aus öffentlichen Registrierungen nutzen und mehr Schutz vor Ausfällen und beschädigten Paketen erhalten.

Azure Artifacts wird standardmäßig für TFS 2017-Kunden installiert. Sie müssen ein Upgrade auf TFS 2017 durchführen, um Azure Artifacts zu verwenden. Wenn Sie den Feed zum ersten Mal verwenden, werden Sie möglicherweise aufgefordert, eine Lizenz zuzuweisen .

  1. Wechseln Sie zu Build & Release , und wählen Sie Pakete aus.

    Gehe zu Azure Artifacts TFS

  2. Wählen Sie + neuer Feed aus.

    Schaltfläche "neuer Feed" TFS

  3. Geben Sie Ihrem Feed einen Namen, eine Beschreibung, und legen Sie fest, wer welche Informationen Lesen kann und ob Sie externe Pakete einschließen möchten.

    Dialogfeld "neuer Feed" TFS

Hinweis

Durch das Aktivieren von Upstreamquellen können Sie Pakete aus öffentlichen Registrierungen nutzen und mehr Schutz vor Ausfällen und beschädigten Paketen erhalten.

Einrichten der Authentifizierung

Um mit Azure Artifacts Feeds zu kommunizieren, benötigen Sie ein Token auf Ihrem lokalen Computer, das Maven abrufen und an Azure DevOps Services übergeben kann.

  1. Wählen Sie auf der Seite Azure Artifacts die Option Verbindung mit Feed herstellen aus.

    Schaltfläche "Mit Feed verbinden" oben rechts auf der Seite

  1. Wählen Sie auf der Seite Pakete die Option Verbindung mit Feed herstellen aus.

    Schaltfläche "Mit Feed verbinden" oben rechts auf der Seite

  1. Öffnen Sie die Registerkarte Maven unter dem Maven-Header.

    • Maven pullt Anmeldeinformationen aus Ihrersettings.xml-Datei.

    • Unter Linux lautet der Dateipfad in der Regel "${user.home}/.m2/settings.xml" .

    • Unter macOS lautet der Dateipfad in der Regel "~/.m2/settings.xml" .

    • Unter Windows lautet der Dateipfad in der Regel "%USERPROFILE%/.m2/settings.xml" .

    • Wenn die Datei nicht vorhanden ist, erstellen Sie jetzt eine.

    Tipp

    Um sicherzustellen, dass Sie die neue XML-Datei im richtigen Format erstellen und speichern, legen Sie datei-Explorer so fest, dass Dateinamenerweiterungen angezeigt werden:

    1. Wählen Sie im Datei-Explorer die Registerkarte Ansicht aus.
    2. Aktivieren Sie unter Anzeigen/Ausblenden das Kontrollkästchen Dateinamenerweiterungen, um Ihre Dateierweiterungen im Datei-Explorer anzuzeigen.
  2. Wenn Sie Maven nicht auf Ihrem Computer installiert haben, können Sie Tools abrufen auswählen, um sie herunterzuladen und zu installieren.

  3. Befolgen Sie den Abschnitt Projekteinrichtung, einschließlich der Generierung eines persönlichen Zugriffstokens.

    Einrichten der Maven-Authentifizierung

Weitere Informationen zur settings.xml-Datei finden Sie in der settings.xml Referenz.

Veröffentlichen eines Artefakts

Führen Sie die folgenden Schritte aus, um ein Maven-Element in Ihrem Feed zu veröffentlichen:

  1. Wenn Sie über kein Maven-Paket verfügen, können Sie eines erstellen, indem Sie den folgenden Befehl ausführen:

    mvn -B archetype:generate -DarchetypeGroupId="org.apache.maven.archetypes" -DgroupId="MyGroup" -DartifactId="myFirstApp"
    

    Wenn Sie den folgenden Fehler erhalten, müssen Sie nach dem Ausführen des vorherigen Befehls eine gültige Lebenszyklusphase oder ein Ziel angeben (..) . führen Sie die folgenden Schritte aus, um ein Ziel in der Laufzeitkonfiguration hinzuzufügen:

    Klicken Sie mit der rechten Maustaste auf das Projekt, und wählen Sie dann Ausführen als Maven-Build Geben Sie im Textfeld Ziele das Paket ein, und wählen Sie dann Ausführen aus.

  2. Richten Sie den Maven-Client mit Ihrem Feedein.

  3. Navigieren Sie zum Verzeichnis Ihrer pom.xml Datei. Standardmäßig befindet sich die pom.xml Datei im Stammpfad des Projekts.

  4. Führen Sie die folgenden Befehle zum Erstellen und Bereitstellen Ihres Maven-Artefakts aus:

    • Erstellen Sie das Paket: mvn build
    • Bereitstellen des Pakets:mvn deploy

Wenn Sie ein Element eines Drittanbieters veröffentlichen möchten, können Sie das Element bereitstellen: bereitstellen -Datei verwenden. Dies kann mit oder ohne POM-Datei zum Bereitstellen von Paketen verwendet werden.

mvn deploy:deploy-file -Dpackaging="jar" -DrepositoryId="MyFeedName" -Durl="MyFeedURL" -DgroupId="MyGroup" -DartifactId="myFirstApp" -Dversion="jarFileVersion" -Dfile="jarFileLocalPath"

Hinweis

Maven-Momentaufnahmen werden in Upstreamquellen nicht unterstützt.

Installieren eines Artefakts aus dem Feed

Installieren Sie Maven-Artefakte aus dem Feed mithilfe des Maven-Clients.

Die gängigste Methode zum Installieren eines Maven-Artefakts ist die Abhängigkeit eines anderen Artefakts.

  1. Erstellen Sie mit dem folgenden Befehl ein Maven-Element:

    mvn -B archetype:generate -DarchetypeGroupId="org.apache.maven.archetypes" -DgroupId="MyGroup" -DartifactId="mySecondApp"
    
  2. Navigieren Sie in Azure Artifacts zu dem Element, das Sie installieren möchten, und kopieren Sie den Inhalt des <dependency> Elements.

  3. Fügen <dependency> Sie den Element Inhalt in das- <dependencies> Element ihrer pom.xml Datei ein.

  4. Führen mvn install Sie aus dem Verzeichnis aus, das Ihre pom.xml Datei enthält.

Weitere Installationsoptionen finden Sie in der Maven CLI -Dokumentation.

  1. Erstellen Sie mit dem folgenden Befehl ein Maven-Element:

    mvn -B archetype:generate -DarchetypeGroupId="org.apache.maven.archetypes" -DgroupId="MyGroup" -DartifactId="mySecondApp"
    
  2. Kopieren Sie im Dialogfeld mit Feed verbinden in TFS die <repository> Informationen. Fügen Sie Sie zweimal in Ihre pom.xml Datei ein (siehe vorherige Beispieldatei):

    • Zwischen den <repositories> Tags
    • Zwischen den <distributionManagement> Tags
  3. Navigieren Sie auf der Seite Pakete zu dem Element, das Sie installieren möchten, und kopieren Sie den Inhalt des- <dependency> Elements.

  4. Fügen <dependency> Sie den Element Inhalt in das- <dependencies> Element ihrer pom.xml Datei ein.

  5. Führen mvn install Sie aus dem Verzeichnis aus, das Ihre pom.xml Datei enthält.

Weitere Installationsoptionen finden Sie in der Maven CLI -Dokumentation.

Automatisieren Sie den Prozess mit Continuous Integration

Sie können Continuous Integration Systeme wie z. b. Team Build verwenden, um die Installation und Veröffentlichung ihrer Maven-Artefakte zu automatisieren. Informationen zu den ersten Schritten mit Continuous Integration finden Sie im Leitfaden Maven in Team Build.

Wie geht es weiter?

Sehen Sie sich die Azure Artifacts Landing Page an, um mehr über andere Themen zu erfahren.