在Visual Studio 2017中,新增了一项功能,可以在构建某些目标类型(特别是我正在使用的.NET Standard 2.0
)时生成NuGet包。
这个功能非常好用,成功构建后会生成.nupkg
文件。
然而,我不知道如何将构建好的NuGet包自动发布到我们的本地存储库。
我已经尝试过在构建后运行以下后置事件:
nuget push -Source https://my.nuget.server/nuget/ "C:\Source\MyProject\bin\Release\MyProject.1.0.0.nupkg"
但这会带来两个问题:
- 软件包的名称包括版本号,而此版本号无法作为构建后事件变量使用,因此我不能像这样说:
nuget push $(NugetPackage)
。我也无法找到可有效获取软件包名称的宏/变量组合。 - 自动 NuGet 打包过程发生在构建后事件之后,因此在构建后事件时,软件包甚至还没有生成!
Microsoft 提供了这个强大的自动 NuGet 打包功能,但似乎没有办法将其推送到本地存储库!
有人成功实现了这个功能吗?我有什么遗漏的地方吗?有解决方法吗?这是正在处理的事情吗?