我正在做一个项目,我想添加普罗米修斯指标导出。我用过的There's a pretty great library for it over at NuGet。然而,新版本(2.0.x,预发行版)应该是为.NET标准构建的。这很好,但是我当前的项目是为Windows上的.NET框架构建的。然而,当我添加这个NuGet包时,我的项目输出中添加了100多个程序集,其中包括许多我认为不相关的程序集。
我将an issue for this添加到项目中,但项目维护者得出的结论是这是正常的。然而,我不同意,我想知道我是否可以提出一个具体的建议来改善这种情况。
为了避免将所有这些程序集添加到我的项目输出中,prometheus-net应该进行哪些更改?
发布于 2018-02-20 06:13:48
这是当前.NET标准2.0构建情况的一个缺陷/错误/不幸的副作用。当目标是4.7.1之前的.NET框架时,系统不能确保所有依赖项都存在,因此它将所有这些额外的程序集复制到输出中。
4.7.1具有.NET标准2.0所需的所有内容,因此如果该框架是针对该框架的,则不会包含这些内容(不过,如果在运行时使用较早的框架,则可能会出现问题)。
在https://github.com/dotnet/standard/issues/415#issuecomment-314288712上有一些信息(还有一个似乎对我有用的变通方法)
https://stackoverflow.com/questions/48872860
复制相似问题