dotnet pack 不适用于 Azure Function(Pack Azure Functions for Nuget)

Posted

技术标签:

【中文标题】dotnet pack 不适用于 Azure Function(Pack Azure Functions for Nuget)【英文标题】:dotnet pack does not work for Azure Function (Pack Azure Functions for Nuget) 【发布时间】:2022-01-02 00:07:22 【问题描述】:

我的 Azure Functions 项目在 .csproj 文件中有以下设置:

<IsPackable>true</IsPackable>
<PackageId>Product.Services.Subscriptions</PackageId>
<Version>1.0.0</Version>
<Authors>MyCompany</Authors>
<Company>MyCompany</Company>

当我为它执行 dotnet pack 时,什么也没有发生(没有创建 .nupkg 文件)。 我看到的输出:

Microsoft (R) Build Engine version 16.11.1+3e40a09f8 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.

  Determining projects to restore...
  All projects are up-to-date for restore.

我做错了什么或者它应该如何工作?

【问题讨论】:

你不把 Azure 函数放在 NuGet 包中是这样工作的。 如果我想要一组可分发的函数怎么办? 【参考方案1】:

我做错了什么或者它应该如何工作?

这是 azure 函数中的设计默认值。 dotnet 包将无法打包 azure 函数。 IsPackable 属性似乎默认设置为 false,即使手动更改它也无济于事。 dotnet cli 不会为 azure 函数创建 .nupkg 文件,但可以为其他 dotnet 项目创建。

参考:

    .net core - How to create NuGet package for AzureFunctions V2 Unable to generate nuget package when using nuget "Microsoft.NET.Sdk.Functions" in a library project

【讨论】:

感谢您的解释。我实际上能够使用 nuget CLI 生成一个包,但似乎不可能从引用的包中公开函数。我认为一般来说打包函数是一个错误的决定…… 如果我的回答对您有帮助,您可以接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为填写)。这对其他社区成员可能是有益的。谢谢

以上是关于dotnet pack 不适用于 Azure Function(Pack Azure Functions for Nuget)的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Google.Pubsub.V1 beta01 不适用于 dotnet cli 项目?

Azure 管道不适用于生产

Azure SAS 令牌不适用于 Azure.Storage.Blobs BlobServiceClient

Azure 通知中心不适用于 ios

Azure 条件访问不适用于令牌获取请求?

基于身份的身份验证不适用于 Azure 存储文件共享