Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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
- Dieses Lernprogramm funktioniert mit der Konsolen-App, die Sie in Erstellen einer .NET-Konsolenanwendung.
Veröffentlichen der App
Starten Sie Visual Studio.
Öffnen Sie das projekt HelloWorld das Sie in Create a .NET console application erstellt haben.
Stellen Sie sicher, dass Visual Studio die Releasebuildkonfiguration verwendet. Ändern Sie bei Bedarf die Build-Konfiguration auf der Symbolleiste von Debug auf Release.
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.
Wählen Sie auf der Registerkarte " Ziel " der Seite " Veröffentlichen " die Option "Ordner" und dann " Weiter" aus.
Wählen Sie auf der Registerkarte "Spezifisches Ziel " der Seite " Veröffentlichen " die Option "Ordner" und dann " Weiter" aus.
Wählen Sie auf der Registerkarte Speicherort der Seite Veröffentlichen die Option Fertig stellen aus.
Wählen Sie auf der Seite "Status der Profilerstellung veröffentlichen " die Option "Schließen" aus.
Wählen Sie auf der Registerkarte " Veröffentlichen " im Fenster " Veröffentlichen " die Option "Veröffentlichen" aus.
Starten Sie Visual Studio Code.
Öffnen Sie den HelloWorld Projektordner, den Sie in Erstellen einer .NET Konsolenanwendung erstellt haben.
Klicken Sie im Hauptmenü auf AnsichtTerminal.
Das Terminal wird im Ordner HelloWorld geöffnet.
Führen Sie den folgenden Befehl aus:
dotnet publishDie 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
Öffnen Sie ihren GitHub Codespace, den Sie in Create a .NET console application erstellt haben.
Fügen Sie oben in HelloWorld.cs die folgende Codezeile hinzu:
#:property PublishAot=falseDiese 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.
Stellen Sie im Terminal sicher, dass Sie sich im Ordner "Lernprogramme " befinden.
Führen Sie den folgenden Befehl aus:
dotnet publish HelloWorld.csDer 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.
Wählen Sie in Projektmappen-ExplorerShow All Files aus.
Erweitern Sie im Projektordner "bin/Release/{net}/publish". (Dabei ist {net} der Zielframeworkordner, z. B. net10.0.)
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.
Klicken Sie auf der linken Navigationsleiste auf den Explorer.
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.
Klicken Sie auf der linken Navigationsleiste auf den Explorer.
Ö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
Klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf den Ordner publish, und wählen Sie Copy Full Path aus.
Ö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\Führen Sie die App mithilfe der ausführbaren Datei aus:
Geben Sie ein, und drücken Sie die EINGABETASTE.
Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie eine beliebige Taste, um den Vorgang zu beenden.
Führen Sie die App mithilfe des Befehls aus:
Geben Sie ein, und drücken Sie die EINGABETASTE.
Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie eine beliebige Taste, um den Vorgang zu beenden.
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"
Führen Sie auf Windows oder Linux die App mithilfe der ausführbaren Datei aus.
Geben Sie auf Windows
.\HelloWorld.exeein, und drücken Sie Enter.** Geben Sie unter Linux ein, und drücken Sie Enter.
Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie die Eingabetaste zum Beenden.
Führen Sie die App auf einer beliebigen Plattform mit dem Befehl aus:
Geben Sie ein, und drücken Sie die EINGABETASTE.
Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie die Eingabetaste zum Beenden.
Klicken Sie im Explorer mit der rechten Maustaste auf den Ordner "Artefakte/HelloWorld ", und wählen Sie "Im integrierten Terminal öffnen" aus.
Führen Sie die App mithilfe der ausführbaren Datei aus. Geben Sie ein, und drücken Sie dann die EINGABETASTE.
Geben Sie als Antwort auf die Eingabeaufforderung einen Namen ein, und drücken Sie die Eingabetaste zum Beenden.
Weitere Ressourcen
- Übersicht über .NET Anwendungsveröffentlichung
dotnet publish- Verwenden Sie das .NET SDK in Umgebungen für kontinuierliche Integration (CI)
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.