繁体   English   中英

Visual Studio 2019 重新下载 Azure Function CLI 工具

[英]Visual Studio 2019 Re-Downloads Azure Function CLI Tools

我正在尝试使用 Visual Studio 2019 编写几个 Azure 函数(版本 2)。第一次尝试运行它们时,我收到以下消息:

在此处输入图像描述

这些功能运行,但如果我重新启动 VS 并尝试再次运行 function 它会再次下载工具,这需要永远。 只要我在同一个 VS session 中重新运行 function 它就不会重新执行下载。

我已经验证我在 VS 中安装了“Azure 开发”工作负载。 我还安装了 Azure 功能核心工具,使用 NPM 描述here 但它每次都继续重新下载。

我该如何解决这个问题? 谢谢。

回复有点晚了,但我最近才遇到这个问题,它严重减慢了我的调试速度。 我曾尝试按照 Azure 功能 ZD3B7C913CDEFD5EBCFZ 页面的推荐通过 npm 下载 Azure 功能核心工具,但没有有效的页面。

由于另一个堆栈溢出问题,我深入研究了 Visual Studio 保存本地安装版本的 Azure 函数工具的位置:

C:\Users\[username]\AppData\Local\AzureFunctionsTools\Releases

最新版本(对我来说是 2.46.0)是empty 一时兴起,我将之前版本的内容复制到空文件夹中,并更新了里面的 manifest.json 以指向新文件夹。

我更新了以下属性。

我更新了以下属性。

这立即为我解决了这个问题,但我仍然不知道为什么这个文件夹首先是空的,或者为什么让 Visual Studio 下载工具没有正确地保存它们。

无论哪种方式,我只是想我会分享以防其他人遇到同样的事情。

@necampanini的答案是正确的。

我将提供更多详细信息,如下所示:

%LocalAppData%\AzureFunctionsTools中有一个提要文件feed.json (或feed-v3.json )。 检查该工具的最新版本的子文件夹层次结构(例如,对我来说它是 v3.4.1)并创建相应的子文件夹(例如%LocalAppData%\AzureFunctionsTools\Releases\3.4.1 )。

Get the URL from the feed file and download the CLI zip file Azure.Functions.Cli.min.win-<platform>.<version>.zip . 将其提取到%LocalAppData%\AzureFunctionsTools\Releases\<version>\cli中。

从提要文件中获取这两个 NuGet 包的 URL:

  1. itemTemplates
  2. projectTemplates

下载包并将它们保存在%LocalAppData%\AzureFunctionsTools\Releases\<version>\templates中。 重命名文件:

  1. microsoft.azure.webjobs.itemtemplates.<version>.nupkg变为Azure.Functions.Templates.1.0.0.nupkg
  2. microsoft.azure.webjobs.projecttemplates.<version>.nupkg变为Microsoft.AzureFunctions.ProjectTemplates.1.0.0.nupkg

最后,将manifest.json从旧版本文件夹复制到%LocalAppData%\AzureFunctionsTools\Releases\<version> ,然后编辑此文件以引用新版本。

这是一个屏幕截图:

在此处输入图像描述

尝试将 Visual Studio 更新到最新更新,它会消失。 如果这不起作用尝试清理 VS 本地缓存,那么 VS 将作为 VS 安装后的第一次启动启动

@necampanini 和 @heavenwing 的回答都帮助我解决了 VS 2019 v16.7.3 的问题。

我认为使用最新的 func CLI 工具使其空白,因为 VS 将尝试加载该工具的最新版本,在我的情况下为 3.12.0。 我注意到 3.12.0 是预览版。 然后我想可能是因为我的 VS 2019 配置为使用预览版 SDK - 这就是为什么它试图找到该工具的最新预览版。 因此,在我手动添加了适当的文件夹 cli 和模板并再次运行 Visual Studio 后,它现在使用的是 3.12.0 并且能够找到 3.12.0 的文件。 我观察到如果它无法找到最新的 cli,它将使用下一个版本,在我的例子中是 3.6.0。

感谢您的前 2 个答案。 我在 vs2019 上遇到了同样的问题,而项目引用了 azure 函数工具 v2。

By looking into the feed-v3.json under %localappdata%\AzureFunctionsTools folder, I found releases 2.60.0 and 2.60.1 actually is the same build Azure.Functions.Cli.min.win-x64.2.7.3188.zip. 所以我可以简单地将 2.60.0 复制到始终为空的 2.60.1 中,然后相应地更新 manifest.json 。

尝试以管理员身份运行 Visual Studio 并从控制台发出此命令:

npm i -g azure-functions-core-tools --unsafe-perm true

然后尝试重现该问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM