我已经安装了Microsoft的Azure Functions Core Tools V.3.x。
我试图遵循一条学习的道路。到目前为止,它在使用节点时工作得很好。无论如何,现在我正在尝试使用.net,所以我所做的如下:
func init
选择dotnet
,它就能在我的工作区中正常生成文件。
func new
并选择HttpTrigger
,然后我得到这个错误:
No templates found matching: 'HttpTrigger'.
To list installed templates, run 'dotnet new --list'.
To search for the templates on NuGet.org, run 'dotnet new HttpTrigger --search'.
因此,通过研究和阅读,我试图遵循一个建议,并最终使用此命令安装模板:
dotnet new -i Microsoft.Azure.WebJobs.ItemTemplates
事实上,它已经证实,我已经安装了HttpTrigger
,正如你可以在下面的图片中看到的。但仍然有相同的问题,如前所述“没有找到匹配的模板:'HttpTrigger'。”
我的问题是,在找不到模板的命令行中出错的可能性有多大?
注意事项:
- 我也使用了cmd和PowerShell,并具有管理员权限。
- 当我尝试在Visual Studio 2019中创建一个项目时,它可以创建HttpTriggers而没有问题。
- 我在Windows 10环境中安装了Visual Studio 2019和2022。
- 这是我第一次使用Azure Functions Core Tools并学习它。
3条答案
按热度按时间hwazgwia1#
注:此解决方案适用于所有其他功能特性,得到相同的问题与
No templates found matching: etc...
。对于那些在使用
HttpTrigger
或其他azure函数功能时遇到类似问题的人。以下是问题的原因和解决方案以及我如何解决它:问题原因
安装不同的SDK版本导致了这个问题。
如何验证
所以运行这个命令
dotnet --list-sdks
这将显示已安装的
dotnet
版本,在我的示例中,安装了dotnet 5
和dotnet 6 preview
。解决方案
所以我所做的我用的
dotnet new globaljson
在我的项目/工作文件夹中,然后将
global.json
中的版本更新为5,它工作了😊。lymnna712#
kiz8lqtg3#
Microsoft文档提醒您不应使用两个不同的包管理器来安装Azure Functions Core Tools。这可能是问题所在(至少是我的问题),或者您以某种方式混淆了Azure Functions Core Tools或有几个版本。在我的情况下:我检查了使用npm安装的全局包:
确认我有一个Azure Functions Core Tools过时的全局包v3。
删除了它:
使用MSI安装程序重新安装了它,您可以在此处找到
在此之后一切都很好。因为它的核心工具v4,我现在可以使用它的identnet6,所有模板包括在内。