Termux环境下安卓平板运行Dart项目测试缺失snapshot报错如何解决
问题原因
Termux官方软件源提供的Dart SDK为精简体积,裁剪了非核心运行时的开发工具组件:包括dart test依赖的frontend_server.dart.snapshot前端编译服务快照、Dart语法分析插件依赖的analysis_server.dart.snapshot分析服务快照,因此普通运行Dart项目功能正常,调用测试、语法分析等开发工具链时就会触发文件缺失报错。
修复方案
方案1:手动补全缺失快照文件
- 执行
dart --version记录当前Termux内安装的Dart版本号 - 从你的主力开发机/树莓派上的同版本Dart SDK的
bin/snapshots目录中,导出frontend_server.dart.snapshot、analysis_server.dart.snapshot两个文件 - 将导出的文件传入Termux的
/data/data/com.termux/files/usr/lib/dart-sdk/bin/snapshots/目录 - 执行命令赋予文件执行权限:
chmod +x /data/data/com.termux/files/usr/lib/dart-sdk/bin/snapshots/*.snapshot- 重新运行
dart test和Dart插件验证功能即可
- 执行
方案2:安装官方完整Dart SDK (推荐)
该方案可以避免后续出现其他开发组件缺失的问题- 先卸载Termux自带的精简版Dart:
pkg remove dart -y- 执行命令查看Termux运行架构,记录输出结果(常见为arm64、armhf):
dpkg --print-architecture- 下载对应架构、对应版本的官方完整版Dart SDK压缩包,传入Termux本地
- 执行解压命令将SDK解压到本地目录,示例路径为
/data/data/com.termux/files/home/dart-sdk - 将Dart可执行文件目录加入系统环境变量:编辑
~/.bashrc(使用zsh则编辑~/.zshrc),新增一行:
export PATH="$HOME/dart-sdk/bin:$PATH"- 执行
source ~/.bashrc(对应zsh则执行source ~/.zshrc)使配置生效,运行dart --version确认安装成功即可
内容的提问来源于stack exchange,提问作者bboett
相关产品推荐
相关产品推荐

