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

Ubuntu 24.04运行.NET 8 Web/Blazor应用时触发System.IO.FileLoadException

解决树莓派5 Ubuntu 24.04下Blazor应用启动FileLoadException问题

可能的原因及解决步骤

1. 确认发布架构与树莓派5匹配

树莓派5为ARM64架构,若发布时选择x64等不兼容架构会导致文件加载失败:

  • 发布时指定目标架构:
    dotnet publish -c Release -r linux-arm64 --self-contained false
    
    或在Visual Studio发布配置中,将目标运行时设置为linux-arm64。

2. 检查发布文件完整性

  • 确认发布目录下存在BlazorApp.dll及所有依赖.dll文件,无缺失
  • 执行命令检查依赖完整性:
    dotnet list /my/path/to/publish package
    

3. 修复权限配置(避免过度开放)

过度设置777权限可能触发安全机制拦截,建议调整为合理权限并确保属主正确:

sudo chown -R $USER:$USER /my/path/to/publish
sudo chmod -R 755 /my/path/to/publish

4. 保证.NET版本一致

确保本地开发用的SDK版本与树莓派上安装的版本匹配:

  • 运行dotnet --version查看当前SDK版本,发布时使用同版本打包。

5. 尝试自包含发布模式

将所有依赖打包进发布包,避免运行时依赖缺失:

dotnet publish -c Release -r linux-arm64 --self-contained true

发布完成后直接运行生成的可执行文件:

./BlazorApp

6. 获取详细加载日志

设置环境变量生成加载追踪日志,定位具体失败环节:

export COREHOST_TRACE=1
export COREHOST_TRACEFILE=dotnet_load.log
dotnet BlazorApp.dll

查看生成的dotnet_load.log文件,获取文件加载失败的具体细节。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 06:55:03