You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新Blazor MAUI应用编译失败原因排查求助

解决方案:Blazor MAUI编译错误处理

1. 修复MSBuildEnableWorkloadResolver禁用问题

检查环境变量

  • 打开「系统属性」→「高级」→「环境变量」,在系统变量和用户变量中查找MSBuildEnableWorkloadResolver:
    • 若存在且值为false,直接删除该变量。
  • 重启Visual Studio,让环境变量修改生效。

检查项目配置文件

  • 打开项目的.csproj文件,查找是否包含以下配置:
    <MSBuildEnableWorkloadResolver>false</MSBuildEnableWorkloadResolver>
    
    • 若存在,删除该行或改为<MSBuildEnableWorkloadResolver>true</MSBuildEnableWorkloadResolver>。

2. 解决目标框架与工作负载版本不匹配问题

你安装的是.NET 8 RC2版本的MAUI工作负载,但项目默认使用.NET 7的目标框架(net7.0-android/ios/maccatalyst),版本不兼容导致错误。升级项目到.NET 8即可解决:

修改项目目标框架

打开.csproj文件,将所有net7.0-*的目标框架替换为net8.0-*,示例:

<TargetFrameworks>net8.0-android;net8.0-ios;net8.0-maccatalyst;net8.0-windows10.0.19041.0</TargetFrameworks>

同步MAUI包版本

将项目中所有MAUI相关的PackageReference版本更新为你已安装的8.0.0-rc.2.9373,示例:

<PackageReference Include="Microsoft.Maui.Controls" Version="8.0.0-rc.2.9373" />
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="8.0.0-rc.2.9373" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebView.Maui" Version="8.0.0-rc.2.9373" />

3. 补充平台版本配置(可选)

若仍提示「平台版本缺失」,可在.csproj中明确指定对应平台版本(与已安装的工作负载版本匹配):

<PropertyGroup>
  <AndroidSdkVersion>34</AndroidSdkVersion>
  <iOSSdkVersion>16.4</iOSSdkVersion>
  <MacCatalystSdkVersion>16.4</MacCatalystSdkVersion>
</PropertyGroup>

4. 验证与清理

  • 打开命令提示符,运行dotnet workload list,确认所有MAUI工作负载状态正常。
  • 删除项目根目录下的bin和obj文件夹,然后重新生成项目。

内容的提问来源于stack exchange,提问作者Ness Odukoya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 07:14:57