【问题标题】:Azure Functions Core Tools failing to install extensions required for bindingsAzure Functions Core Tools 无法安装绑定所需的扩展
【发布时间】:2019-02-23 16:35:53
【问题描述】:

我正在尝试在本地运行 Azure 函数 (JavaScript),但它在 func start 上失败并出现以下错误。

AddConfig:绑定类型“表”未注册。请确保类型正确并安装了绑定扩展。

请注意,我已经成功安装了先决条件,当时或写作时是 .NET Core 2.1Node.JSCore Tools 包。

从上面的错误中可以明显看出,我已将表的输出绑定添加到 function.json 中,用于名为“AddConfig”的函数。我按照documentation添加了绑定。

有人可以就我在这里可能遗漏的内容提供建议吗?

我尝试过的事情

遵循文档

根据documentation,我在项目文件夹中运行了以下命令。

func extensions install

这产生了以下输出 -

Microsoft (R) Build Engine version 15.9.20+g88f5fadfbe for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Restoring packages for C:\super-secret-path\WitchHunt\AddConfig\extensions.csproj...
  Generating MSBuild file C:\super-secret-path\WitchHunt\AddConfig\obj\extensions.csproj.nuget.g.props.
  Generating MSBuild file C:\super-secret-path\WitchHunt\AddConfig\obj\extensions.csproj.nuget.g.targets.
  Restore completed in 314.99 ms for C:\super-secret-path\WitchHunt\AddConfig\extensions.csproj.
  extensions -> C:\super-secret-path\WitchHunt\AddConfig\bin\extensions.dll

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:01.66

该命令还导致extensions.csproj 被添加到项目中,内容如下 -

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <WarningsAsErrors></WarningsAsErrors>
    <DefaultItemExcludes>**</DefaultItemExcludes>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.WebJobs.Script.ExtensionsMetadataGenerator" Version="1.0.1" />
  </ItemGroup>
</Project>

定位所需的扩展

我尝试使用以下命令手动安装扩展。虽然此操作有效并导致将包引用添加到 extensions.csproj,但重新运行该函数会导致相同的错误。

func extensions install --package Microsoft.Azure.WebJobs.Extensions.Storage --version 3.0.3

在 Portal 上创建绑定并复制“extensions.csproj”

标题确实说明了一切。我创建了一个函数应用程序,添加了一个函数,创建了一个绑定,安装了扩展,然后复制/粘贴了 extensions.csproj,但错误仍然存​​在。

我的function.json,以防有人感兴趣

httpTriggerhttp 绑定是在我创建函数时生成的,而 table 绑定是从文档中复制的(然后我更改了 tableNameconnection 属性,但我认为这不是问题)。

{
    "disabled": false,
    "bindings": [
        {
            "authLevel": "function",
            "type": "httpTrigger",
            "direction": "in",
            "name": "req",
            "methods": [
                "get",
                "post"
            ]
        },
        {
            "type": "http",
            "direction": "out",
            "name": "res"
        },
        {
            "tableName": "WitchHuntConfig",
            "connection": "AzureWebJobsStorage",
            "name": "tableBinding",
            "type": "table",
            "direction": "out"
        }
    ]
}

【问题讨论】:

  • func extensions install --package Microsoft.Azure.WebJobs.Extensions.Storage --version 3.0.3 这个命令应该可以修复并且我的功能可以正常工作。你能删除bin obj文件夹和extensions.csproj文件然后再次运行这个命令吗?
  • @JerryLiu - 感谢您的回复。删除obj 文件夹似乎已经成功了。但是,我仍然必须针对存储包,这不是文档所建议的。希望 MS 能在不久的将来使他们的文档准确无误。

标签: azure azure-functions azure-functions-core-tools


【解决方案1】:

func extensions install --package Microsoft.Azure.WebJobs.Extensions.Storage --version 3.0.3 应该修复,尝试删除bin obj 文件夹然后再次运行此命令。

func extensions install 不是没用的,关键是绑定类型table 不在BindingPackageMap 中,因此没有安装扩展。已打开issue 进行跟踪。

【讨论】:

    猜你喜欢
    • 2019-01-23
    • 1970-01-01
    • 2018-10-14
    • 2020-11-11
    • 1970-01-01
    • 2018-10-12
    • 2023-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多