【发布时间】:2019-09-04 14:56:25
【问题描述】:
我有两个 .Net 项目:
- 一个项目是一个包含一些DTO的.Net标准项目;称之为“核心库”。这旨在作为 NuGet 包发布
- 另一个是.Net框架项目,包含核心库的NuGet包。称之为“应用”
使用 TFS,我们能够编译核心库,发布生成的 NuGet 库,然后启动应用程序的构建,恢复 NuGet 对核心库的引用。一切正常。
问题是在开发核心库+应用程序时,我们经常编译核心,不能等待整个核心库构建完成才能更新应用程序的本地引用。此外,我们必须推送核心库的完整提交(因此我们不能在应用程序中测试它们之前同时推送一个 DTO)。
所以我想知道 Visual Studio 和 Nuget 中是否存在一种在本地用户的 .nuget 文件夹中发布/安装核心 Nuget 库的方法,以便在下一次构建时自动对应用程序的项目可见。
你能帮我解决这个问题吗?
【问题讨论】:
-
如果两个项目都是本地构建的,为什么不使用方便的项目引用呢?如果您希望 nuget 包对应用程序的项目自动可见,您可以按照 mm8 的建议将 nuget 包放置在 nuget.config 中定义的任何包源路径中。您也可以通过 UI 执行此操作,在 VS IDE 中,转到 Tools=>nuget package manager=>package manager settings 添加新的包源,它可以是本地文件夹,如
C:\CustomPackages,然后是此文件夹中的任何 nuget 包应用程序的nuget package manager UI可以看到。 (也可以设置路径为本地缓存C:\xxx\.nuget\packages)。 -
我的问题是将
nuget push命令自动化到本地提要,在我的情况下应该是%userprofile%\.nuget\packages。我不能要求公司中的任何人手动将核心包复制到本地提要以查看链接应用程序中的更改 -
也许你想做的类似于what this user do?每次成功构建核心库项目后,运行构建后事件或目标以自动执行 nuget push 命令。
-
嗨,这个问题有什么更新吗?或者我误解了你的最后评论:(
-
对不起,我以为我回答了你的问题!
标签: c# visual-studio nuget nuget-package-restore