如果你很早開始寫 .NET Core 程式,有個節省寶貴 SSD 空間的小訣竅 - 移除不必要的 .NET Core SDK。

.NET Core/.NET 5 的 Runtime 或 SDK 採 Side-by-Side 安裝,新舊版會並存,新版會換掉 C:\Program Files\dotnet 下的 dotnet.exe 指向最新版本,舊版不需移除,並可以透過 global.json 指定使用特定版本(參考:如何在多個 .NET Core SDK 版本之間進行切換 by 保哥)。大部分時侯我們都快快樂樂改用新版,舊版 SDK 便靜靜地躺在那裡浪費空間。

有多浪費呢?每個版本的 SDK 耗用 400-500MB 左右(Runtime 比較小,100MB 以內)。

有些版本完全不值得保留。例如:3.1.*、2.1.* 的多個版本只需留最新者,例如:3.1.201 跟 3.1.111 留 3.1.201 就好,3.0.*、2.2.* 等版本則是可以全部移除,理由是它們已經 EOS (結束技術支援) 不該繼續使用。.NET Core/.NET 5+ 各版的技術支援狀況可到微軟網站 - .NET Core and .NET 5 Support Policy 查詢。

依微軟的支援現況,目前只需留 2.1、3.1 跟 5.0 最新版就好,有裝 SDK 就不用裝 Runtime 或 Hosting。另外,Visual Studio 2017/2019 有特定 .NET Core SDK 版本要求,例如:.NET Core 2.1 VS2017 要 2.1.520、VS2019 則是 2.1.812,細節可以參考官網 Download .NET SDKs for Visual Studio

經過移除、換版,最後我只留了 .NET Core 2.1.812 SDK、.NET Core 3.1.405 SDK、.NET 5.0.102 SDK,清出 5GB 左右的空間。

2021-03-11 補充:若要移除 Microsoft .NET Core 2.x - Windows Server Hosting,記得要裝新版

如果嫌手工移除太費事(我個人偏愛手動解除安裝,殺軟體清空間的過程很療癒 XD),有個批次移除 .NET Core SDK 工具,MVP Poy 有寫了一篇文章介紹 - 批次移除舊版本 .NET Core SDK,有需要的同學可以參考。

Tips of how to identify unsed .NET Core SDK and removing them to save disk space.


Comments

Be the first to post a comment

Post a comment