Veröffentlichen von Paketen in NuGet.org

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

NuGet.org ist ein Paket-Manager, mit dem Entwickler wiederverwendbaren Code freigeben können. Ein NuGet-Paket ist eine komprimierte Datei mit .nupkg Erweiterung, die kompilierten Code enthält, der in anderen Projekten genutzt werden kann. Pakete, die in NuGet.org gehostet werden, sind für alle Entwickler weltweit verfügbar.

Voraussetzungen

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

Erstellen eines Projekts

Sie können Ihr eigenes .NET-Projekt verwenden, um ein NuGet-Paket zu erstellen und zu generieren, oder 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)" aus, und wählen Sie "Weiter" aus.

  3. Benennen Sie Ihr Projekt und Ihre Projektmappe, und wählen Sie dann einen Speicherort aus, um das Projekt 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, damit wir für dieses Lernprogramm die vorhandene Vorlage verwenden und keinen zusätzlichen Code schreiben.

Einrichten und Generieren eines Pakets

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

  2. Füllen Sie das Formular aus, und stellen Sie sicher, dass Ihre Paket-ID eindeutig ist, andernfalls kann es in Konflikt mit vorhandenen Paketen auf NuGet.org treten. Eine allgemeine 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 .

    Konfigurieren von Paketeigenschaften

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

    Generieren des Pakets

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

    Packausgabe

Generieren eines API-Schlüssels

Nachdem wir 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, wenn Sie nicht.

  2. Wählen Sie ihr Benutzernamensymbol aus, und wählen Sie dann API-Schlüssel aus.

  3. Wählen Sie " Erstellen" aus, und geben Sie dann einen Namen für Den Schlüssel ein. Geben Sie Ihrem Schlüssel einen Bereich für neue Pakete und Paketversionen , und geben Sie in das Feld "Globmuster" 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 den API-Schlüssel an einem sicheren Speicherort. Wir benötigen diesen Schlüssel, um unser NuGet-Paket zu veröffentlichen.

    Kopieren des API-Schlüssels

Veröffentlichen eines Pakets in NuGet.org

Sie können Ihr Paket mithilfe der 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. Sie benötigen den Namen Ihres Pakets, einen API-Schlüssel und die Quell-URL, um dies zu tun.

  1. Navigieren Sie in einer Eingabeaufforderung mit erhöhten Rechten 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 wie folgt aussehen.

    Veröffentlichen der Paketausgabe