繁体   English   中英

排除来自 Nuget package 的文件

[英]Excluding files from Nuget package

我有几个项目,可能是控制台应用程序、Web 应用程序、WebAPI、MVC 等)和一个普通的 Class 库(不是 Core/.Net 6),其中包含Newtonsoft.Json dll(最新版本)。

每个应用程序都有自己的Newtonsoft.Json dll 版本,已为该项目手动添加。 这样做意味着一个较旧的应用程序可以使用 1.0 版,下一个应用程序可以使用 2.0 版,而更高版本的应用程序可以使用更高版本等

我想通过 Nuget package 共享这个 class 库,但我已经将最新版本的Newtonsoft.Json dll 添加到我自己的 class 库中。

当我创建一个.nuspec文件时,我想排除这个文件但是使用这个代码

<files>
    <file src="bin\Release\Newtonsoft.dll" target="\" />
</files>

在 .nuspec 文件中似乎不起作用,阅读https://learn.microsoft.com/en-us/nuget/reference/nuspec建议使用排除,但我无法获得正确的语法。

我在这里错过了什么?

在你的 nuspec 中包括这个:

<dependencies>
    <dependency id="Newtonsoft.Json" version="[3.5,14)" />
</dependencies>

其中 3.5 是您支持的最旧版本,14 是您不支持的最新版本。 然后你可以从你自己的 package 中省略 newtonsoft.dll 并且你安装 nuget 的项目将能够确定使用哪个 newtonsoft。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM