本地运行多项目Azure Function遇Language Worker进程退出问题
Azure Functions dotnet-isolated 运行时启动失败问题
我在本地笔记本上运行包含多个项目的Azure Function时,每次在Visual Studio中启动都会报错,错误日志如下:
[2023-04-26T12:22:15.095Z] 语言工作进程已退出。进程ID=18612。 [2023-04-26T12:22:15.098Z] C:\Program Files\dotnet\dotnet.exe 退出代码 -2147450730 (0x80008096)。 [2023-04-26T12:22:15.168Z] [2023-04-26T12:22:15.170Z] 语言工作进程已退出。进程ID=3944。 [2023-04-26T12:22:15.173Z] C:\Program Files\dotnet\dotnet.exe 退出代码 -2147450730 (0x80008096)。 [2023-04-26T12:22:15.348Z] 无法为运行时 dotnet-isolated 启动新的语言工作进程。 [2023-04-26T12:22:15.351Z] System.Private.CoreLib: 任务已取消。612"
我已经尝试更新所有NuGet包,但问题依然存在。
环境信息
- .NET版本:7.0.202
- 已安装的.NET SDK:
- 7.0.202 [C:\Program Files\dotnet\sdk]
- 已安装的.NET运行时:
- Microsoft.AspNetCore.All 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
- Microsoft.AspNetCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
- Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
- Microsoft.AspNetCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
- Microsoft.AspNetCore.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
- Microsoft.NETCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
- Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
- Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
- Microsoft.NETCore.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
- Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
- Microsoft.WindowsDesktop.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
- Microsoft.WindowsDesktop.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
排查解决方案
检查Azure Functions Core Tools版本
执行func --version查看本地工具版本,确保与.NET 7的dotnet-isolated运行时兼容,版本过低则下载最新版覆盖安装。验证项目配置
打开Function项目的.csproj文件,确认配置项正确:<PropertyGroup> <TargetFramework>net7.0</TargetFramework> <AzureFunctionsVersion>v4</AzureFunctionsVersion> <OutputType>Exe</OutputType> <IsWorkerRuntime>true</IsWorkerRuntime> </PropertyGroup>清理重建项目
- 在Visual Studio中执行「清理解决方案」,手动删除所有项目的
bin和obj文件夹 - 重新执行「重建解决方案」后再启动函数
- 在Visual Studio中执行「清理解决方案」,手动删除所有项目的
检查环境变量
验证DOTNET_ROOT环境变量是否指向C:\Program Files\dotnet,路径错误则修改环境变量后重启Visual Studio。修复.NET安装
打开命令提示符执行dotnet repair,修复.NET 7安装中可能存在的损坏文件。单独测试单个项目
暂时移除解决方案中其他项目,只保留Function项目启动测试,排查是否为项目间依赖冲突导致。若单独启动正常,再逐一添加其他项目定位问题点。
内容的提问来源于stack exchange,提问作者Hamza
相关产品推荐
相关产品推荐

