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

Avalonia包升级至11.2.2后浏览器应用无法运行求助

解决Avalonia 11.x升级后Wasm项目无法运行的问题

针对你升级Avalonia到11.2.2后Wasm项目仅显示启动画面、报错dotnet.js.map 404和blazor.boot.json加载失败的问题,本质是11.1+版本的Avalonia Wasm项目结构和启动逻辑发生了变更,以下是具体修复步骤:

1. 彻底清理旧构建产物

删除项目根目录下的bin、obj文件夹,以及AppBundle目录,避免旧缓存文件干扰新版本构建。

2. 同步所有Avalonia包版本

打开项目的.csproj文件,确保所有Avalonia相关的PackageReference版本统一为11.2.2,核心依赖至少包含:

<PackageReference Include="Avalonia" Version="11.2.2" />
<PackageReference Include="Avalonia.Desktop" Version="11.2.2" />
<PackageReference Include="Avalonia.Browser" Version="11.2.2" />

注意:11.1+版本必须显式引用Avalonia.Browser包,旧版本可能无需此引用。

3. 更新项目配置项

在.csproj的<PropertyGroup>中添加或更新以下配置:

<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework> <!-- 确保使用对应版本的.NET,Avalonia 11.2.x适配.NET 8 -->
<AvaloniaWasmMode>Auto</AvaloniaWasmMode>
<WasmBuildNative>false</WasmBuildNative> <!-- 调试阶段禁用Native构建,发布时可改为true -->
<BlazorEnableCompression>false</BlazorEnableCompression> <!-- 避免调试时压缩文件导致的问题 -->

4. 修复启动脚本与页面

11.1+版本不再使用dotnet.js作为入口,需替换为AvaloniaWasm.js:

  • 打开index.html,将原有的dotnet.js相关引用替换为:
    <script src="_framework/AvaloniaWasm.js"></script>
    
  • 替换或删除旧的main.js,新版本的启动逻辑示例(替换为你的程序集名称):
    import { initialize } from './_framework/AvaloniaWasm.js';
    
    initialize({
        appAssembly: 'YourAppAssemblyName.dll',
        assetsAssembly: 'YourAppAssemblyName.Assets.dll',
        debug: true
    });
    

5. 更新调试配置

检查Properties/launchSettings.json,确保浏览器启动配置指向正确的端口,且调试器类型为WebAssembly:

{
  "profiles": {
    "YourApp.Wasm": {
      "commandName": "Project",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "http://localhost:5001",
      "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}"
    }
  }
}

6. 重新构建并运行

执行以下命令确保依赖和构建流程正确:

dotnet clean
dotnet restore
dotnet build
dotnet run --project YourApp.Wasm.csproj

额外注意事项

  • 不要混合不同版本的Avalonia包,所有相关依赖版本必须一致;
  • 如果仍有问题,可以直接用Avalonia 11.2.2的模板创建新的Wasm项目,对比配置文件和启动脚本的差异,逐步迁移你的代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 13:32:35