NuGet自动更新特定包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NuGet自动更新特定包相关的知识,希望对你有一定的参考价值。

我正在尝试配置我的项目/ nuget以自动更新特定的nuget包。我目前正在使用NuGet版本2.8。*并使用Visual Studio策略中的自动包恢复。我的问题是,在我的应用构建之前,让NuGet自动更新项目的最佳方法是什么?我正在尝试使用自动包恢复策略做什么?或者我是否需要使用MSBuild中包含的命令行包还原,并在NuGet.targets文件中指定自定义更新命令和目标?

答案

Visual Studio工具目前无法实现。 NuGet不会自动升级您的软件包版本。您仍必须手动执行此操作。

不推荐,但从理论上讲,您可以编写自己的脚本来查询nuget.org以获取最新版本,然后升级packages.config中的版本号。但这似乎是一种危险的方法。

另一答案

这是一个老帖子,但万一有人降落在这里。一个选项可能是使用预构建脚本在命令下运行:

nuget update configPath  packageid

配置路径可以是项目“.cproj”路径,解决方案(.sln)路径,也可以是package.config文件路径。

https://docs.microsoft.com/en-us/nuget/tools/cli-ref-update

请注意,似乎nuget CLI不适用于.NET Core。对于Core,您需要使用已集成nuget命令的dotnet CLI。但是没有单独的更新命令(在本文发布时)。您需要使用add来更新,但该命令需要显式版本号。因此,解决方法可能是调用remove然后添加命令。

以上是关于NuGet自动更新特定包的主要内容,如果未能解决你的问题,请参考以下文章

在构建后事件上更新本地 nuget 包

确定特定命名空间的 NuGet 包

NuGet的几个小技巧

从 CI 到生产 Nuget 源的 Nuget 包版本控制和推广

nuget服务器搭建,以及如何发布一个Nuget包

如何使用 cpack/cmake 生成具有特定文件组织的 nuget 包?