gpt4 book ai didi

.net - 有没有办法发布 .NET 标准库而不在 Visual Studio 2019 中生成 .nupkg?

转载 作者:行者123 更新时间:2023-12-04 14:18:09 34 4
gpt4 key购买 nike

我的理解是,当您发布 .NET 标准库时,预期的行为是生成 .nupkg .

我有内部 .Net 标准库,我维护这些库以用于内部项目。典型的工作流程是发布库,然后将发布的文件复制到使用项目。这不是我应该做的事情吗?我对发布 .NET 标准库时缺少选项感到有些困惑——因为有一个 .nupkg没有选择以不同的形式发布。

我想从发布中得到的只是发布目录中必要的库文件的集合(不在 nupkg 内)。有没有办法做到这一点?

最佳答案

My understanding is that when you publish a .Net Standard Library, the expected behavior is to produce a .nupkg. What I want to get from publish is just a collection of necessary library files in the publish directory (not inside a nupkg). Is there a way to do this?



对于普通的 .net 框架项目,如果您引用一个 nuget 包并构建它。然后你会得到一个包含 Project.dll 和 Package.dll 的输出文件夹(bin\debug 或 bin\release)。这就是你想要的。

但是对于 .net standard项目,它只会输出 Project.dll默认情况下。这也是预期的行为,参见 comment1 , comment2 .这就是为什么我建议您需要手动编辑 xx.csproj在构建期间获得预期的行为。这是设计使然,它不会将 nuget 依赖项复制到输出,并且 this是可能满足您需求的解决方法。

至于为什么 publish output is a xx.nupkg右键项目节点=>Publish in VS IDE(.net标准项目),请查看 this document : .NET Standard 引用程序集的主要分发工具是 NuGet 包。 我认为这就是为什么 Publish 的输出是 xx.nupkg 的原因,很难说,但是,它可能是设计使然......

编辑:

Is there a way to publish a .Net Standard Library without producing a .nupkg in Visual Studio 2019?



如果您指的是 发布 .net 标准项目的选项。(在解决方案资源管理器 => 发布中右键单击 .net 标准项目的项目名称)。恐怕答案是否定的。此选项是设计使然,目前没有其他选项,例如 publish a folder with all referenced assemblies支持。您可能需要添加 Feature Request in DC .

希望我的澄清有所帮助,如果我有任何误解,请随时纠正我:(

关于.net - 有没有办法发布 .NET 标准库而不在 Visual Studio 2019 中生成 .nupkg?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58101078/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com