日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.NET Core 2.0应用程序大小减少50%

發布時間:2023/12/4 asp.net 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .NET Core 2.0应用程序大小减少50% 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?.NET Core 2.0應用程序減小體積瘦身官方工具?IL Linker。

?IL Linker 來源于mono的linker ?https://github.com/mono/linker,目前還是預覽版本。

在一般的情況下,鏈接器可以將應用程序的大小減少50%,大型應用程序的大小可能更有利,鏈接器會刪除應用程序中的代碼和依賴庫,而這些代碼不會被任何代碼路徑訪問。它實際上是應用程序特定的無效代碼分析

下面正式開始體驗

版本必須為.NET Core 2.0

新建應用

新建一個控制臺應用

dotnet new console -o linkdemo

然后添加nuget.config

dotnet new nuget

接著在config 中加入?<add key="dotnet-core" value="https://dotnet.myget.org/F/dotnet-core/api/v3/index.json" /> 如下:

<?xml version="1.0" encoding="utf-8"?>

<configuration>

?<packageSources>

? ? <!--LineZero -->

? ? <clear />

? ? <add key="dotnet-core" value="https://dotnet.myget.org/F/dotnet-core/api/v3/index.json" />

?</packageSources>

</configuration>

添加ILLink 程序包

dotnet add package ILLink.Tasks -v 0.1.4-preview-906439

最新版本可以到https://dotnet.myget.org/feed/dotnet-core/package/nuget/Illink.Tasks 查看

發布程序

  • dotnet publish -c release -r <RID> -o out

  • <RID> 以下值可用?win-x64,?win-x86,?linux-x64,?osx-x64

win10 包含linker的發布

dotnet publish -c release -r win10-x64 -o linker

不包含linker

dotnet publish -c release -r win10-x64 -o nolinker /p:LinkDuringPublish=false

都可以成功執行。

我們看看體積大小。

?

?基本上減小50%以上,文件減少2/3 。

  • /p:LinkDuringPublish=false?- 禁用鏈接器。

  • /p:ShowLinkerSizeComparison=true?- 顯示應用程序大小縮小的列表。

顯示程序縮小列表

dotnet publish -c release -r win10-x64 -o linker /p:ShowLinkerSizeComparison=true

?

真正意義上的.NET Core 瘦身。

注意事項:

  • 目前只支持發布獨立部署應用程序。需要指定運行時ID。

  • 它目前是一個實驗功能。我們打算在隨后的.NET Core版本中進行支持。

  • 鏈接僅在發布時發生,因此鏈接的應用程序需要在發布后進行測試,而不僅僅是在構建之后。

  • 鏈接器將會破壞使用反射的一些應用程序。請參閱使用IL Linker高級功能。

參考文檔:https://github.com/dotnet/core/blob/master/samples/linker-instructions.md

原文地址:http://www.cnblogs.com/linezero/p/7477233.html


.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注

總結

以上是生活随笔為你收集整理的.NET Core 2.0应用程序大小减少50%的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。