Flutter Serverpod启动服务器失败:语言版本过高报错
解决Serverpod启动报错:指定语言版本过高
问题核心
该错误源于当前运行环境的Dart版本与Serverpod 0.9.20的兼容范围不匹配,或项目配置的SDK版本超出了旧版Serverpod的支持上限。
解决方案
1. 确认终端实际使用的Dart版本
先检查当前终端调用的Dart版本是否为你安装的2.18.4:
dart --version
若输出不是2.18.4,说明系统默认Dart路径指向了旧版本(如2.14),可直接使用Flutter附带的Dart命令启动:
flutter dart bin/main.dart
2. 调整项目SDK版本配置
Serverpod 0.9.20对Dart的最高支持版本低于2.18,修改项目根目录的pubspec.yaml:
environment: sdk: '>=2.14.0 <2.18.0'
修改后更新依赖:
dart pub get # 或使用Flutter的pub命令 flutter pub get
3. 降级Dart/Flutter版本(若配置调整后仍报错)
若确认Dart版本为2.18且调整配置后依旧报错,说明Serverpod 0.9.20无法兼容该版本,需降级到兼容范围:
- 降级Flutter到对应版本(如Flutter 3.0.5,对应Dart 2.17.1):
flutter downgrade 3.0.5
4. 升级Serverpod到新版本(长期方案)
Serverpod 0.9.x属于旧版本,后续1.x、2.x版本已支持更高版本的Dart和Flutter。若项目允许,可直接升级Serverpod依赖并按官方指南调整代码(注意处理版本变更带来的破坏性修改)。
内容的提问来源于stack exchange,提问作者Khalife
相关产品推荐
相关产品推荐

