NET Core 3.0 發布單文件可執行程序
兩種方法。
一、右擊vs編輯項目文件,增加PublishSingleFile節點配置,代碼如下:
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <RuntimeIdentifier>win10-x64</RuntimeIdentifier> <PublishSingleFile>true</PublishSingleFile> <OutputType>Exe</OutputType> <TargetFramework>netcoreapp3.0</TargetFramework> </PropertyGroup> <ItemGroup> <PackageReference Include="Newtonsoft.Json" Version="12.0.2" /> </ItemGroup> </Project>
然后右擊點擊“發布”按鈕即可。文件比較大,隨便建立一個winform程序發布之后149M。發布的
win10-x64 種類型的,測試在 windows server 2008 上也可以運行。第一次運行有點慢。
<PublishTrimmed>true</PublishTrimmed>
剪裁未使用的程序集來減小應用的大小,使用反射或相關動態功能的應用程序慎用。
RuntimeIdentifier 參考:
https://www.cnblogs.com/frankyou/p/5630998.html
- Windows 7
win7-x64
win7-x86
- Windows 8
win8-x64
win8-x86
- Windows 10
win10-x64
win10-x86
二、在項目目錄下執行如下命令:
Windows
dotnet publish -r win10-x64 /p:PublishSingleFile=true
maxOS
dotnet publish -r osx-x64 /p:PublishSingleFile=true
Linux
dotnet publish -r linux-x64 /p:PublishSingleFile=true