最新的 Grpc.Core NuGet 包有 150 MB 之大。它似乎在其一生中稳步增长。这里有一些例子:
- v1.17.1(2018 年 12 月)48.34 MB
- v2.23.1(2019 年 8 月)68.11 MB
- v2.30.0(2020 年 6 月)150.28 MB
也许这不是同类,但随机选择一个示例,Entity Framework Core 包为 859 KB。
我很好奇这个包裹里到底装了什么东西,让它变得这么大。对于创建简单 C# 服务的人来说,是否有一些东西并不是完全必要的?
包含库和构建脚本的包的核心功能总计不到 2 MB。包如此之大的原因是它包含以下运行时文件Linux, Windows and Mac OSX,以及本机库iOS and Android。让我们看看包内容的详细信息,但只查看前两三个目录级别。
- build [8 KB]
- 单一Android10
- net45
- Xamarin.iOS10
- lib [1.9 MB]
- runtimes [137.5 MB]
- linux [113.4 MB]
- 获胜 [12.4 MB]
- 操作系统 [11.7 MB]
- native [424.6 MB]
- android [164.3 MB]
- x86 [56.3 MB]
- arm64-v8a [54.3 MB]
- armeabi-v7a [53.7 MB]
- ios [260.3 MB]
您可能想知道为什么移动运行时比移动运行时大得多Windows or MacOS。事实证明,对于Android有针对三种不同架构的本机库,每种架构大约 50 MBiOS不仅有一个*_csharp_ext
图书馆,而是一个整体libgrpc
仅库就有 260 MB。为了Linux有两个用于 x86 和 x64 的库,分别为 44.8 MB 和 68.6 MB。但是,我不知道为什么上述库的大小比其对应库大得多Windows or MacOS.
该包可能涵盖的内容可能比您在项目中实际需要的多得多,并且您可能希望使用更适合您的场景的语言特定包,如Grpc 存储库 https://github.com/grpc/grpc.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)