Freigeben über


Lernprogramm: Veröffentlichen einer .NET Konsolenanwendung

In diesem Lernprogramm wird gezeigt, wie Sie eine Konsolen-App veröffentlichen, damit andere Benutzer sie ausführen können. Beim Veröffentlichen wird der Satz von Dateien erstellt, die zum Ausführen einer Anwendung erforderlich sind. Um die Dateien bereitzustellen, kopieren Sie sie auf den Zielcomputer.

Voraussetzungen

Veröffentlichen der App

  1. Starten Sie Visual Studio.

  2. Öffnen Sie das projekt HelloWorld das Sie in Create a .NET console application erstellt haben.

  3. Stellen Sie sicher, dass Visual Studio die Releasebuildkonfiguration verwendet. Ändern Sie bei Bedarf die Build-Konfiguration auf der Symbolleiste von Debug auf Release.

    Visual Studio Symbolleiste mit ausgewähltem Release-Build.

  4. Klicken Sie mit der rechten Maustaste auf das HelloWorld-Projekt (nicht auf die HelloWorld-Lösung), und wählen Sie im Menü " Veröffentlichen" aus.

    Visual Studio Kontextmenü veröffentlichen.

  5. Wählen Sie auf der Registerkarte " Ziel " der Seite " Veröffentlichen " die Option "Ordner" und dann " Weiter" aus.

    Picken Sie ein Veröffentlichungsziel in Visual Studio.

  6. Wählen Sie auf der Registerkarte "Spezifisches Ziel " der Seite " Veröffentlichen " die Option "Ordner" und dann " Weiter" aus.

    Picken Sie das spezifische Veröffentlichungsziel in Visual Studio.

  7. Wählen Sie auf der Registerkarte Speicherort der Seite Veröffentlichen die Option Fertig stellen aus.

    Visual Studio Registerkarte

  8. Wählen Sie auf der Seite "Status der Profilerstellung veröffentlichen " die Option "Schließen" aus.

  9. Wählen Sie auf der Registerkarte " Veröffentlichen " im Fenster " Veröffentlichen " die Option "Veröffentlichen" aus.

    Visual Studio Fenster veröffentlichen.

  1. Starten Sie Visual Studio Code.

  2. Öffnen Sie den HelloWorld Projektordner, den Sie in Erstellen einer .NET Konsolenanwendung erstellt haben.

  3. Klicken Sie im Hauptmenü auf AnsichtTerminal.

    Das Terminal wird im Ordner HelloWorld geöffnet.

  4. Führen Sie den folgenden Befehl aus:

    dotnet publish
    

    Die Standard-Build-Konfiguration ist Release, die für eine bereitgestellte Site geeignet ist, die im Produktionsbetrieb ausgeführt wird. Die Ausgabe der Releasekonfiguration enthält nur wenige symbolischen Debuginformationen und wird vollständig optimiert.

    Die Befehlsausgabe ähnelt dem folgenden Beispiel:

    Restore complete (1.1s)
      HelloWorld net10.0 succeeded (7.8s) → bin\Release\net10.0\publish\
    
    Build succeeded in 10.3s
    
  1. Öffnen Sie ihren GitHub Codespace, den Sie in Create a .NET console application erstellt haben.

  2. Fügen Sie oben in HelloWorld.cs die folgende Codezeile hinzu:

    #:property PublishAot=false
    

    Diese Eigenschaftsdirektive deaktiviert die native Ahead-of-Time (AOT)-Kompilierung, und die App verwendet den Standard-Just-in-Time-Compiler (JIT) zur Laufzeit. Die veröffentlichte Ausgabe wird framework-abhängig sein.

  3. Stellen Sie im Terminal sicher, dass Sie sich im Ordner "Lernprogramme " befinden.

  4. Führen Sie den folgenden Befehl aus:

    dotnet publish HelloWorld.cs
    

    Der Befehl erstellt eine unabhängige ausführbare Datei.

    Die Befehlsausgabe ähnelt dem folgenden Beispiel:

    Restore complete (0.5s)
      HelloWorld net10.0 succeeded (4.0s) → artifacts\HelloWorld\
    
    Build succeeded in 5.1s
    

Überprüfen der Dateien

Standardmäßig erstellt der Veröffentlichungsprozess eine frameworkabhängige Bereitstellung, bei der die veröffentlichte Anwendung auf einem Computer ausgeführt wird, auf dem die .NET Laufzeit installiert ist. Benutzer können die veröffentlichte App ausführen, indem Sie auf die ausführbare Datei doppelklicken oder den Befehl über eine Eingabeaufforderung ausstellen.

In den folgenden Schritten sehen Sie sich die dateien an, die vom Veröffentlichungsprozess erstellt wurden.

  1. Wählen Sie in Projektmappen-ExplorerShow All Files aus.

    Projektmappen-Explorer Option zum Anzeigen aller Dateien.

  2. Erweitern Sie im Projektordner "bin/Release/{net}/publish". (Dabei ist {net} der Zielframeworkordner, z. B. net10.0.)

    Projektmappen-Explorer mit veröffentlichten Dateien.

    Wie die Abbildung zeigt, enthält die veröffentlichte Ausgabe die folgenden Dateien:

    • HelloWorld.deps.json

      Dies ist die Laufzeitabhängigkeitsdatei der Anwendung. Sie definiert die .NET Komponenten und bibliotheken (einschließlich der Dynamic Link Library, die Ihre Anwendung enthält), die zum Ausführen der App erforderlich sind. Weitere Informationen finden Sie unter Runtime-Konfigurationsdateien.

    • HelloWorld.dll

      Dies ist die frameworkabhängige Bereitstellungsversion der Anwendung. Um diese Bibliothek für dynamische Verknüpfungen auszuführen, geben Sie an einer Eingabeaufforderung ein. Diese Methode zum Ausführen der App funktioniert auf jeder Plattform, auf der die .NET Laufzeit installiert ist.

    • HelloWorld.exe

      Dies ist die frameworkabhängige ausführbare Version der Anwendung. Um sie auszuführen, geben Sie in einer Eingabeaufforderung ein. Die Datei ist betriebssystemspezifisch.

    • HelloWorld.pdb (optional für die Bereitstellung)

      Dies ist die Debugsymboldatei. Sie müssen diese Datei nicht zusammen mit Ihrer Anwendung bereitstellen, obwohl Sie sie speichern sollten, wenn Sie die veröffentlichte Version Ihrer Anwendung debuggen müssen.

    • HelloWorld.runtimeconfig.json

      Dies ist die Laufzeitkonfigurationsdatei der Anwendung. Sie identifiziert die .NET-Version, für die Ihre Anwendung entwickelt wurde, um darauf ausgeführt zu werden. Sie können ihr auch Konfigurationsoptionen hinzufügen. Weitere Informationen finden Sie unter .NET Laufzeitkonfigurationseinstellungen.

Standardmäßig erstellt der Veröffentlichungsprozess eine frameworkabhängige Bereitstellung, bei der die veröffentlichte Anwendung auf einem Computer ausgeführt wird, auf dem die .NET Laufzeit installiert ist. Zum Ausführen der veröffentlichten App können Sie die ausführbare Datei verwenden oder den befehl über eine Eingabeaufforderung ausführen.

In den folgenden Schritten sehen Sie sich die dateien an, die vom Veröffentlichungsprozess erstellt wurden.

  1. Klicken Sie auf der linken Navigationsleiste auf den Explorer.

  2. Erweitern Sie bin/Release/net10.0/publish.

    Explorer zeigt veröffentlichte Dateien

    Wie die Abbildung zeigt, enthält die veröffentlichte Ausgabe die folgenden Dateien:

    • HelloWorld.deps.json

      Dies ist die Laufzeitabhängigkeitsdatei der Anwendung. Sie definiert die .NET Komponenten und bibliotheken (einschließlich der Dynamic Link Library, die Ihre Anwendung enthält), die zum Ausführen der App erforderlich sind. Weitere Informationen finden Sie unter Runtime-Konfigurationsdateien.

    • HelloWorld.dll

      Dies ist die frameworkabhängige Bereitstellungsversion der Anwendung. Um diese Dynamic Link Library (DLL) auszuführen, geben Sie an einer Eingabeaufforderung ein. Diese Methode zum Ausführen der App funktioniert auf jeder Plattform, auf der die .NET Laufzeit installiert ist.

    • HelloWorld.exe (HelloWorld unter Linux oder macOS.)

      Dies ist die frameworkabhängige ausführbare Version der Anwendung. Die Datei ist betriebssystemspezifisch.

    • HelloWorld.pdb (optional für die Bereitstellung)

      Dies ist die Debugsymboldatei. Sie müssen diese Datei nicht zusammen mit Ihrer Anwendung bereitstellen, obwohl Sie sie speichern sollten, wenn Sie die veröffentlichte Version Ihrer Anwendung debuggen müssen.

    • HelloWorld.runtimeconfig.json

      Dies ist die Laufzeitkonfigurationsdatei der Anwendung. Es identifiziert die Version von .NET, auf der Ihre Anwendung ausgeführt werden soll. Sie können ihr auch Konfigurationsoptionen hinzufügen. Weitere Informationen finden Sie unter .NET Laufzeitkonfigurationseinstellungen.

Bei einer Einzeldateianwendung erstellt der Veröffentlichungsprozess ein Artefaktverzeichnis mit einer kompilierten Assemblydatei. Die veröffentlichte Anwendung kann mit dem Befehl ausgeführt werden.

In den folgenden Schritten sehen Sie sich die dateien an, die vom Veröffentlichungsprozess erstellt wurden.

  1. Klicken Sie auf der linken Navigationsleiste auf den Explorer.

  2. Öffnen Sie Artefakte/HelloWorld.

    Explorer zeigt veröffentlichte Dateien

    Wie die Abbildung zeigt, enthält die veröffentlichte Ausgabe die folgenden Dateien:

    • Helloworld

      Dies ist die frameworkabhängige ausführbare Version der Anwendung. Die Datei ist betriebssystemspezifisch. Codespaces werden unter Linux ausgeführt, sodass dies eine ausführbare Linux-Datei ist.

    • HelloWorld.deps.json

      Dies ist die Laufzeitabhängigkeitsdatei der Anwendung. Sie definiert die .NET Komponenten und bibliotheken (einschließlich der Dynamic Link Library, die Ihre Anwendung enthält), die zum Ausführen der App erforderlich sind. Weitere Informationen finden Sie unter Runtime-Konfigurationsdateien.

    • HelloWorld.dll

      Dies ist die frameworkabhängige Bereitstellungsversion der Anwendung. Um diese Dynamic Link Library (DLL) auszuführen, geben Sie an einer Eingabeaufforderung ein. Diese Methode zum Ausführen der App funktioniert auf jeder Plattform, auf der die .NET Laufzeit installiert ist.

    • HelloWorld.pdb (optional für die Bereitstellung)

      Dies ist die Debugsymboldatei. Sie müssen diese Datei nicht zusammen mit Ihrer Anwendung bereitstellen, obwohl Sie sie speichern sollten, wenn Sie die veröffentlichte Version Ihrer Anwendung debuggen müssen.

    • HelloWorld.runtimeconfig.json

      Dies ist die Laufzeitkonfigurationsdatei der Anwendung. Sie identifiziert die Version von .NET, für die Ihre Anwendung erstellt wurde. Sie können ihr auch Konfigurationsoptionen hinzufügen. Weitere Informationen finden Sie unter .NET Laufzeitkonfigurationseinstellungen.

    Klicken Sie mit der rechten Maustaste, und wählen Sie "Herunterladen" aus, um Dateien aus Codespaces auf Ihren lokalen Computer herunterzuladen.

Ausführen der veröffentlichten App

  1. Klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf den Ordner publish, und wählen Sie Copy Full Path aus.

  2. Öffnen Sie eine Eingabeaufforderung, und navigieren Sie zum Veröffentlichungsordner . Geben Sie dazu den vollständigen Pfad ein, und fügen Sie ihn ein. Beispiel:

    cd C:\Projects\HelloWorld\bin\Release\net10.0\publish\
    
  3. Führen Sie die App mithilfe der ausführbaren Datei aus:

    1. Geben Sie ein, und drücken Sie die EINGABETASTE.

    2. Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie eine beliebige Taste, um den Vorgang zu beenden.

  4. Führen Sie die App mithilfe des Befehls aus:

    1. Geben Sie ein, und drücken Sie die EINGABETASTE.

    2. Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie eine beliebige Taste, um den Vorgang zu beenden.

  1. Klicken Sie im Explorer mit der rechten Maustaste auf den Ordner publish (unter macOS klicken Sie bei gedrückter CTRL-Taste darauf), und wählen Sie Im integrierten Terminal öffnen aus.

    Kontextmenü mit "In Terminal öffnen"

  2. Führen Sie auf Windows oder Linux die App mithilfe der ausführbaren Datei aus.

    1. Geben Sie auf Windows .\HelloWorld.exe ein, und drücken Sie Enter.

    2. ** Geben Sie unter Linux ein, und drücken Sie Enter.

    3. Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie die Eingabetaste zum Beenden.

  3. Führen Sie die App auf einer beliebigen Plattform mit dem Befehl aus:

    1. Geben Sie ein, und drücken Sie die EINGABETASTE.

    2. Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie die Eingabetaste zum Beenden.

  1. Klicken Sie im Explorer mit der rechten Maustaste auf den Ordner "Artefakte/HelloWorld ", und wählen Sie "Im integrierten Terminal öffnen" aus.

  2. Führen Sie die App mithilfe der ausführbaren Datei aus. Geben Sie ein, und drücken Sie dann die EINGABETASTE.

  3. Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie die Eingabetaste zum Beenden.

Weitere Ressourcen

Bereinigen von Ressourcen

GitHub löscht Ihren Code-Space automatisch nach 30 Tagen Inaktivität. Wenn Sie weitere Anleitungen in dieser Reihe erkunden möchten, können Sie Ihren Codespace einsatzbereit lassen. Wenn Sie bereit sind, die website .NET zum Herunterladen des .NET SDK zu besuchen, können Sie Ihren Codespace löschen. Um Ihren Codespace zu löschen, öffnen Sie ein Browserfenster, und navigieren Sie zu Ihren Codespaces. Im Fenster wird eine Liste Ihrer Codespaces angezeigt. Wählen Sie die drei Punkte () im Eintrag für den Lern-Tutorial-Codespace aus. Wählen Sie dann "Löschen" aus.

Nächste Schritte

In diesem Tutorial haben Sie eine Konsolen-App veröffentlicht. Im nächsten Tutorial erstellen Sie eine Klassenbibliothek.