本教學課程示範如何發佈主控台應用程式,以便其他使用者執行它。 發行會建立一組執行應用程式所需的檔案。 若要部署檔案,請將檔案複製到目標計算機。
先決條件
- 本教學課程適用於您在 使用 Visual Studio 建立的 .NET 控制台應用程式。
發佈應用程式
啟動 Visual Studio。
開啟您在使用 Visual Studio 建立 .NET 控制台應用程式中建立的HelloWorld 專案。
請確認 Visual Studio 正在使用發行版本組態。 如果有需要,請將工具列上的組建配置設定從 [除錯] 變更為 [發佈版]。
以滑鼠右鍵按兩下 HelloWorld 專案(而非 HelloWorld 方案),然後從功能表中選取 [ 發佈 ]。
在 [發佈] 頁面的 [目標] 索引標籤上,選取 [資料夾],然後選取 [下一步]。
在 [發佈] 頁面的 [特定目標] 索引標籤上,選取 [資料夾],然後選取 [下一步]。
在 [發佈] 頁面的 [位置] 索引標籤上,選取 [完成]。
在[發佈設定檔建立進度]頁面上,選取[關閉]。
在 [ 發佈 ] 視窗的 [ 發佈 ] 索引標籤上,選取 [ 發佈]。
檢查檔案
根據預設,發佈程式會建立架構相依部署,這是一種部署類型,其中已發行的應用程式會在已安裝 .NET 運行時間的計算機上執行。 使用者可以按兩下可執行檔案或從命令提示字元發出 dotnet HelloWorld.dll
命令,以執行已發佈的應用程式。
在下列步驟中,您將查看發行程式所建立的檔案。
在 [方案總管] 中,選取 [顯示所有檔案]。
在項目資料夾中,展開 bin/Release/net7.0/publish。
如下圖所示,已發佈的輸出包含下列檔案:
HelloWorld.deps.json
這是應用程式的運行時間相依性檔案。 它會定義執行應用程式所需的 .NET 元件和連結庫(包括包含您應用程式的動態連結庫)。 如需詳細資訊,請參閱 運行時間組態檔。
HelloWorld.dll
這是 架構相依部署的應用程式 版本。 若要執行此動態連結庫,請在命令提示字元中輸入
dotnet HelloWorld.dll
。 執行應用程式的這個方法可在已安裝 .NET 運行時間的任何平台上運作。HelloWorld.exe
這是應用程式的架構相依可執行檔版本。 若要執行它,請在命令提示字元中輸入
HelloWorld.exe
。 檔案是操作系統特定的。HelloWorld.pdb (部署時可選用)
這是偵錯符號檔案。 您不需要將這個檔案與應用程式一起部署,但您應該保存它,以便在需要偵錯您應用程式的發行版本時使用。
HelloWorld.runtimeconfig.json
這是應用程式的運行時間組態檔。 它會識別應用程式建置用來執行之 .NET 的版本。 您也可以將組態選項新增至其中。 如需詳細資訊,請參閱
.NET 運行時間組態設定。
執行已發佈的應用程式
在 [方案總管] 中,以滑鼠右鍵按兩下 [發佈 ] 資料夾,然後選取 [ 複製完整路徑]。
開啟命令提示字元並流覽至 publish 資料夾。 若要這樣做,請輸入
cd
,然後貼上完整路徑。 例如:cd C:\Projects\HelloWorld\bin\Release\net8.0\publish\
使用可執行檔案執行應用程式:
輸入
HelloWorld.exe
,然後按 Enter。輸入名稱以回應提示,然後按任意鍵結束。
使用
dotnet
命令執行應用程式:輸入
dotnet HelloWorld.dll
,然後按 Enter。輸入名稱以回應提示,然後按任意鍵結束。
其他資源
- .NET 應用程式部署
- 使用 .NET CLI 發佈 .NET 應用程式
dotnet publish
- 教學課程:使用Visual StudioCode發佈 .NET 控制台應用程式
- 在持續整合 (CI) 環境中使用 .NET SDK
後續步驟
在本教學課程中,您已發布一個主控台應用程式。 在下一個教學課程中,您會建立類別庫。