2

我最近通过 NuGet 将 MathNet.Numerics 添加到了我的 C# 解决方案中。解决方案文件夹中的包目录膨胀到大约 50 MB!然而,我可以简单地下载 MathNet dll 并仅使用它,它只占用 1.5 MB。如果我还想要文档,我可以包含另外 3.5 MB 的 XML。

我使用 Nuget 是错误的还是这是预期的行为?似乎浪费了很多空间。

4

2 回答 2

4

软件包包含相同版本的多个版本的原因是利益冲突:

  • 我们希望支持广泛的平台
  • 我们希望利用高级功能,即使它们仅在某些平台上可用(通常仅在完整的 .Net 框架上,如 TPL 或 System.Numerics),出于性能以及兼容性和可用性的原因。
  • 通过每个版本(包括所有平台)只发布一个包来避免下游依赖的噩梦。

如果这给您带来了问题,请考虑在Discussion.mathdotnet.com (新)中与团队提出这一点,或者在 GitHub 中打开一个问题。

PS:如果 NuGet 不适合您,我们还提供Zip 存档,您可以手动处理并准确选择您需要的内容。

于 2015-06-20T11:12:38.350 回答
1

它看起来像预期的行为。由 NuGet 包所有者决定将多少个版本放入单个包中。

您可能可以安全地删除它,但每次还原 NuGet 文件时它都会回来。如果您担心构建或发布中包含大量膨胀,请检查您的.csproj文件并确保只复制MathNet.Numerics.dll您需要的版本。

于 2015-06-20T02:11:05.823 回答