调试和发布 nuget 包本地存储库
Debug and release nuget packages local repository
我们正在为我们的 visual studio 项目试验 nuget。但是,我们仅(或至少主要)将 nuget 用于我们自己的外部引用,并将它们存储在本地存储库(网络共享)中。我想知道的是如何处理整个 debug/release 情况。
具体(简化)情况:
我们有一个主项目引用了我们自己开发的两个共享组件。这些共享组件也用在我们公司的其他产品中
当我们构建主项目(天蓝色管道)时,我们构建项目的调试和发布版本。但是,我们只能为每个外部引用指定一个 nuget 包。
我们想要完成的是在调试构建期间使用共享组件的调试版本,并在发布构建期间使用发布版本。然而,这些(据我所知)实际上是不同的包。
解决这个问题的方法是什么?例如,有没有一种方法可以将发布版本和调试版本都包含在一个 nuget 包中?是否可以针对不同的构建配置设置使用不同的 nuget 配置?
我找到了 Best practices with Nuget: Debug or Release?,但是这个主题并没有真正解决我的问题。这个线程更多是关于是否将调试版本或发布版本发布到远程服务器的讨论。我们想发布两者并在私有存储库中使用它们。我们无意与世界其他地方共享我们的图书馆。
一个 NuGet 包通常只包含一组用于特定目标框架的程序集。它并不是真正设计用于发布调试和发布版本,因为您发布的是供其他用户使用的 NuGet 包。通常,您不会向最终用户发布应用程序的调试版本和单独的发布版本。
您可以通过在具有自己的引用和配置信息的 NuGet 包中使用 custom MSBuild .targets file 来解决此问题。您可以将此 .targets 文件用作项目的扩展。它将被导入,因此您可以根据项目中定义的配置根据需要定义引用。这并不理想,但应该可以。
我们正在为我们的 visual studio 项目试验 nuget。但是,我们仅(或至少主要)将 nuget 用于我们自己的外部引用,并将它们存储在本地存储库(网络共享)中。我想知道的是如何处理整个 debug/release 情况。
具体(简化)情况:
我们有一个主项目引用了我们自己开发的两个共享组件。这些共享组件也用在我们公司的其他产品中
当我们构建主项目(天蓝色管道)时,我们构建项目的调试和发布版本。但是,我们只能为每个外部引用指定一个 nuget 包。
我们想要完成的是在调试构建期间使用共享组件的调试版本,并在发布构建期间使用发布版本。然而,这些(据我所知)实际上是不同的包。
解决这个问题的方法是什么?例如,有没有一种方法可以将发布版本和调试版本都包含在一个 nuget 包中?是否可以针对不同的构建配置设置使用不同的 nuget 配置?
我找到了 Best practices with Nuget: Debug or Release?,但是这个主题并没有真正解决我的问题。这个线程更多是关于是否将调试版本或发布版本发布到远程服务器的讨论。我们想发布两者并在私有存储库中使用它们。我们无意与世界其他地方共享我们的图书馆。
一个 NuGet 包通常只包含一组用于特定目标框架的程序集。它并不是真正设计用于发布调试和发布版本,因为您发布的是供其他用户使用的 NuGet 包。通常,您不会向最终用户发布应用程序的调试版本和单独的发布版本。
您可以通过在具有自己的引用和配置信息的 NuGet 包中使用 custom MSBuild .targets file 来解决此问题。您可以将此 .targets 文件用作项目的扩展。它将被导入,因此您可以根据项目中定义的配置根据需要定义引用。这并不理想,但应该可以。