Freigeben über


Veröffentlichen von Paketen in NuGet.org

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

NuGet.org ist ein Paket-Manager, mit dem Entwickler wiederverwendbaren Code freigeben können. Ein NuGet-Paket ist eine komprimierte Datei mit .nupkg Der Erweiterung, die kompilierten Code enthält, der in anderen Projekten genutzt werden kann. Pakete, die in NuGet.org gehostet werden, stehen allen Entwicklern auf der ganzen Welt zur Verfügung.

Voraussetzungen

  • Jede Version von Visual Studio 2019 und der .NET Core-Workload.
  • dotnet CLI. Wenn sie noch nicht vorhanden ist, installieren Sie das .NET Core SDK.
  • Registrieren Sie sich für ein kostenloses Konto auf nuget.org , wenn Sie noch kein Konto haben.

Erstellen eines Projekts

Sie können Ihr eigenes .NET-Projekt verwenden, um ein NuGet-Paket zu erstellen und zu generieren, oder sie können eine neue einfache .NET-Klassenbibliothek wie folgt erstellen:

  1. Wählen Sie in Visual Studio "Datei", " Neu" und dann "Projekt" aus.

  2. Wählen Sie die Vorlage "Klassenbibliothek (.NET Standard)" und dann "Weiter" aus.

  3. Benennen Sie Ihr Projekt und Ihre Lösung und wählen Sie dann einen Speicherort, um es lokal zu speichern. Wenn Sie fertig sind, wählen Sie Erstellen aus.

    Erstellen eines Klassenbibliotheksprojekts

Die Vorlagenklassenbibliothek reicht aus, um ein NuGet-Paket zu erstellen, daher verwenden wir für dieses Lernprogramm die vorhandene Vorlage, und wir schreiben keinen zusätzlichen Code.

Einrichten und Generieren eines Pakets

  1. Wählen Sie Ihr Projekt im Projektmappen-Explorer aus, klicken Sie mit der rechten Maustaste und wählen dann Eigenschaften anschließend Package aus.

  2. Füllen Sie das Formular aus, und stellen Sie sicher, dass Ihre Paket-ID eindeutig ist, andernfalls kann es zu Konflikten mit vorhandenen Paketen auf NuGet.org führen. Eine gängige Benennungskonvention ist etwa: Company.Product.Feature. Wenn Sie Ihr Paket jedes Mal generieren möchten, wenn Sie Ihr Projekt erstellen, aktivieren Sie das Kontrollkästchen "NuGet-Paket generieren" auf build.if you want to generate your package every time you build your project, select the Generate NuGet package on build checkbox.

    Konfigurieren von Paketeigenschaften

  3. Wählen Sie Ihr Projekt im Projektmappen-Explorer aus, klicken Sie mit der rechten Maustaste auf Pack, um das .nupkg Paket zu generieren.

    Paket generieren

  4. Überprüfen Sie den Status des Paketbefehls im Ausgabefenster.

    Packausgabe

Generieren eines API-Schlüssels

Nachdem wir nun unser nupkg Paket erstellt haben, sind wir fast bereit, es zu veröffentlichen, aber zuerst müssen wir einen API-Schlüssel generieren, um eine Verbindung mit der NuGet.org-API herzustellen.

  1. Melden Sie sich bei Ihrem NuGet.org-Konto an, oder erstellen Sie ein Konto, falls noch nicht.

  2. Wählen Sie das Symbol "Benutzername" und dann "API-Schlüssel" aus.

  3. Wählen Sie "Erstellen" aus, und geben Sie dann einen Namen für Ihren Schlüssel ein. Geben Sie Ihrem Schlüssel eine Erlaubnis zum Pushen neuer Pakete und Paketversionen und geben Sie * im Feld "Glob-Muster" ein, um alle Pakete auszuwählen. Wenn Sie fertig sind, wählen Sie Erstellen aus.

    API-Schlüssel erstellen

  4. Wählen Sie Kopieren aus, und speichern Sie Ihren API-Schlüssel an einem sicheren Speicherort. Wir benötigen diesen Schlüssel, um unser NuGet-Paket zu veröffentlichen.

    API-Schlüssel kopieren

Veröffentlichen eines Pakets in NuGet.org

Sie können Ihr Paket über die Web-UI, dotnet CLI oder nuget.exe CLI veröffentlichen. Wir konzentrieren uns auf die Veröffentlichung von Paketen mithilfe der Befehlszeile in diesem Abschnitt. Dazu benötigen Sie den Namen Ihres Pakets, einen API-Schlüssel und die Quell-URL.

  1. Öffnen Sie eine Eingabeaufforderung mit erhöhten Rechten und navigieren Sie zu dem Ordner, der Ihr nupkg Paket enthält.

  2. Führen Sie den folgenden Befehl aus, um Ihr Paket in NuGet.org zu veröffentlichen. Ersetzen Sie die Platzhalter durch den Paketnamen und den API-Schlüssel.

    dotnet nuget push <packageName> --api-key <APIKey> --source https://api.nuget.org/v3/index.json
    
  3. Die Ausgabe des vorherigen Befehls sollte etwa wie folgt aussehen.

    Veröffentlichen der Paketausgabe