visual-studio-2017 - 构建时的 NuGet 更新(VS2017 Pro)
问题描述
我目前正在寻找一种在 Visual Studio 2017 中触发 NuGet 更新的方法。
我正在使用 VS2017 Pro。我的代码库由多个解决方案组成,这些解决方案将代码分成层(数据访问/业务逻辑/ui/应用程序/等)。构建解决方案时,它会生成一个或多个 NuGet 包,然后由“食物链”上游的项目使用。在我们的构建服务器上自动化 NuGet 更新是微不足道的,但是如果我们可以配置我们的开发环境,使其始终尝试在构建时获取最新的 NuGet 包,类似于包还原的工作方式,那就太好了。
我遇到了很多关于旧版本 Visual Studio/NuGet 的信息,包括更新自动生成的 nuget.targets 文件,但是这些不是在 VS2017 中使用 NuGet 包管理器 4.6.x 创建的(除非我正在做有事吗!)
任何帮助或建议将不胜感激。
解决方案
构建时的 NuGet 更新(VS2017 Pro)
如果预构建事件对您来说为时已晚,您可以尝试使用预构建事件/构建后事件将新项目添加到解决方案中,以更新其他项目/解决方案使用的 nuget 包:
<YourNuGetPath>\nuget.exe update "<YourSolutionPath>\xxxx.sln"
或者
<YourNuGetPath>\nuget.exe update "<ThePackages.configFilePath>\Packages.config"
在这种情况下,您可以构建这个新的添加项目,以使用 nuget 包为这些项目/解决方案获取最新的 NuGet 包。
此外,如果您不想在那些使用 nuget 包的项目之前构建这个项目,您可以让这些项目引用这个新的添加项目,Visual Studio 将在构建那些使用 nuget 包的项目之前构建它。
希望这可以帮助。
推荐阅读
- spring - 为什么报告:“No mapping found for HTTP request with URI”
- google-cloud-platform - 我无法在我的 GCP 实例上打开任何端口。我正在尝试打开端口 25565
- java - 只允许 JavaFX 节点的视觉溢出
- javascript - hoverOn 和 hoverOff 不起作用 - if 语句 - React
- javascript - 无法单击更改的 iframe 中的按钮
- react-native - 使用 OTA 更新在 Expo 中动态加载外部文件
- python - 集中到列表中的每个值
- vim - 使快速修复缓冲区可修改
- curl - 如何使用 Curl CLI 执行 OAuth 2.0?
- facebook - 如何自定义 facebook webview 卡,它允许对话框流实现中的“default_action”、“messenger_extensions”和“webview_height_ratio”?