如何在构建后将NuGet作为.csproj文件的一部分下载,以便创建.nupkg文件

本文关键字:文件 下载 一部分 nupkg 创建 csproj 构建 作为 NuGet | 更新日期: 2023-09-27 18:26:41

我有一个C#项目,它有一些.dll,我想打包到.nupkg文件中。当nuget.exe已下载到.nuget文件夹时,此操作正常,但当nugetexe不存在时,它将不会自动下载,即使.nuget''nuget.targets文件的设置DownloadNuGetExe已设置为true

经过一番调查,如果没有可导入的包,nuget.exe似乎不会下载。但我要求下载nuget.exe,这样它就可以在开发人员机器和构建服务器上创建.nupkg文件(而不是管理将包/引用导入到项目中)。

如何绕过此限制?我更喜欢只修改.csproj文件的解决方案。

如何在构建后将NuGet作为.csproj文件的一部分下载,以便创建.nupkg文件

不确定这是否是最好的解决方案,但我们通常会将nuget.exe放入.nuget文件夹,并确保将其检查到源代码管理中,以便在开发人员下载最新代码时下载。

这不是最优雅的解决方案,但由于我们实际上简化了我们的代码&因此,我们不再有一个包含所有内容的怪物解决方案,我们发现每个解决方案/项目都需要以某种方式提供自己的nuget.exe。这种方法一直对我们有效,希望它也对你有效。。。!

我们设法找到了一个解决方案,方法是导入.nuget''nuget.targets文件,然后像这样调用名为_DownloadNuGet的目标:

<CallTarget Targets="_DownloadNuGet" />