sublime text无法配置可用的dart/flutter开发环境,仅支持语法高亮、基础跳转和手动格式化;必须安装nickaivazis或mrjones的dart插件、复用flutter自带sdk、启用lsp-dart补全,并在终端启动sublime以继承shell环境。

Sublime Text 不能配置出可用的 Dart/Flutter 开发环境,它连不上 Dart 3.4+/Flutter 3.22+ 的语言服务器,也不支持热重载、调试或设备管理;你最多能配出语法高亮、基础跳转和手动格式化——前提是 PATH 正确、插件选对、分析服务器重启到位。
装哪个 Dart 插件才不报红、不跳错
只装 Dart(作者是 dart-lang 或 mrjones),不是 Dartlang、SublimeDart,更不是任何带 “Flutter” 字样的插件。后三者要么已停更,要么不支持 null safety 后的语法:required、??=、泛型推导全会标红,Ctrl+Click 跳转直接失效。
- 通过
Ctrl+Shift+P→Package Control: Install Package搜索Dart,严格核对作者字段 - 装完必须重启 Sublime,否则右下角不会显示
Dart - 如果右下角没反应,右键文件 →
Open all with current extension as→Dart手动激活
dart_sdk_path 填错等于白配
这个配置项不是必须填,但一旦填错,会直接导致 Failed to start the Dart analysis server 或 Unable to locate SDK。优先走系统 PATH,而不是硬写路径。
- 终端先跑
which dart和flutter doctor -v,确认输出里有类似/opt/homebrew/Caskroom/flutter/3.19.5/flutter/bin/cache/dart-sdk的路径 - 别单独下载 Dart SDK —— 复用 Flutter 自带的,版本才匹配,
analysis_server.dart.snapshot才找得到 - 填路径时,必须指向
cache/dart-sdk目录,不是flutter根目录,也不是dart-sdk/bin - 填完后必须
Ctrl+Shift+P→Dart: Restart Analysis Server,等状态栏出现Analysis server ready
LSP-dart 是补全唯一可行路径,但别指望它多聪明
原生 Dart 插件的补全在 Dart 2.12+ 后就废了,返回空列表或静默失败。想有点提示,只能上 LSP + LSP-dart。
- 先通过
Package Control安装LSP和LSP-dart - 确保终端能跑
dart --version,否则LSP-dart启动失败,状态栏右下角不会显示LSP-dart - 打开
LSP.sublime-settings,把"command"明确设为/path/to/flutter/bin/cache/dart-sdk/bin/dart,不能依赖PATH - 补全不会自动弹,要手动触发:
Ctrl+Shift+P→LSP: Auto Complete,或保存后等几秒再按Ctrl+Space -
WidgetsBinding.instance、required参数、package:flutter里的Widget补全基本靠猜,LSP-dart对 Flutter 特有类支持很弱
为什么 Ctrl+Click 跳不到定义,或跳到 .dart.js
这不是插件没装对,而是 Dart 分析服务器根本没启动成功,或者连到了错误的 SDK。常见原因有三个:
-
dart_sdk_path填的是 Flutter 根目录(如/path/to/flutter)或单独安装的 Dart SDK,正确路径必须是/path/to/flutter/bin/cache/dart-sdk - Sublime 启动时没加载 shell 的
PATH,导致插件找不到dart命令——即使终端里which dart有输出,GUI 启动的 Sublime 也看不见 - 没手动重启分析服务器:装完插件或改完设置后,必须按
Ctrl+Shift+P→ 输入Dart: Restart Analysis Server,否则状态栏不会显示Analysis server ready
打开控制台(Ctrl+`),如果看到 Failed to start the Dart analysis server 或 Unable to locate SDK,基本就是上面三者之一出了问题。











