Sublime Text 不能直接运行 Groovy,但可通过系统 groovy 命令构建脚本,前提是终端中 groovy --version 可正常输出版本号;需正确安装 Groovy(如 SDKMAN!/brew/scoop)、配置 PATH、重启 Sublime、创建 groovy.sublime-build 构建文件,并用 Gr8 插件实现语法高亮。

Sublime Text 不能直接运行 Groovy,但能高亮、校验、配合系统 groovy 命令执行脚本——前提是终端里 groovy --version 能成功输出版本号。90% 的“配置失败”其实卡在这一步。
确认 groovy 命令在终端可用
Sublime 的构建系统默认继承系统 PATH,它不自己装 Groovy,只调用你装好的命令。如果终端输 groovy --version 报 command not found,Sublime 一定找不到。
- macOS/Linux:用
sdk install groovy(SDKMAN!)或brew install groovy,装完检查which groovy输出路径是否在$PATH中;若用 SDKMAN,记得把~/.sdkman/candidates/groovy/current/bin加进~/.zshrc - Windows:用
scoop install groovy比手动解压+配环境变量更稳;避免用groovy.bat直接调用,Scoop/SDKMAN 安装后会提供无后缀的groovy可执行文件 - 装完必须彻底退出 Sublime(不是关标签页),再重新打开,否则旧 PATH 不刷新
- 验证方式:在 Sublime 里按
Ctrl + `打开内置终端,输入groovy --version—— 必须有输出
创建并配置 groovy.sublime-build
这个 JSON 文件告诉 Sublime:用什么命令跑当前文件、在哪跑、怎么解析报错。别套用网上过时模板,注意平台差异和安全细节。
- 路径:菜单
Tools → Build System → New Build System,粘贴后保存为groovy.sublime-build - 内容(macOS/Linux 和 Scoop/SDKMAN 安装的 Windows 通用):
{ "cmd": ["groovy", "$file"], "file_regex": "^(*?):([0-9]+):([0-9]+):? ?(.*)$", "working_dir": "${file_path}", "selector": "source.groovy", "shell": false } -
"shell": false更安全,避免 shell 解析干扰含空格或中文的路径;Windows 用户若用传统安装方式(非 Scoop/SDKMAN),可改"shell": true并把"cmd"改成["cmd", "/c", "groovy", "$file"] - 如果脚本依赖外部 JAR,得显式加
-cp,比如"cmd": ["groovy", "-cp", "/path/to/lib.jar", "$file"]
让 .groovy 文件正确高亮
高亮失效 ≠ 构建失败,是语法定义没加载。Sublime 默认打开 .groovy 是纯文本,关键字、字符串、注释全一个颜色。
- 用 Package Control 安装
Gr8插件(不是老版Groovy插件),它支持 Gradle DSL 关键字如implementation、plugins - 装完后,打开任意
.groovy文件,右下角点击Plain Text→Open all with current extension as→ 选Gr8/Groovy - 如果
build.gradle还显示 XML 风格,检查Preferences → Settings – Syntax Specific里有没有残留的"syntax": "Packages/XML/XML.tmLanguage",删掉
别指望 Sublime 运行 Jenkinsfile 或 build.gradle
它们不是普通 Groovy 脚本,依赖 Jenkins agent 或 Gradle daemon 的上下文。本地用 groovy Jenkinsfile 会立刻报 No such property: pipeline;用 groovy build.gradle 也会缺 dependencies 等 DSL 支持。
-
Jenkinsfile:装SublimeJenkins插件,右下角设为Jenkinsfile语法,只做高亮和基础校验 -
build.gradle:Build System 应调用./gradlew(Linux/macOS)或gradlew.bat(Windows),而不是groovy - Sublime 不解析 DSL 语义,不会补全
implementation的参数,也不会跳转到插件源码——这是 IDE 的事,不是编辑器该干的
最常被忽略的点:Groovy 是独立运行时,装了 JDK ≠ 装了 Groovy;Sublime 启动方式影响 PATH 继承(尤其 Windows);Gr8 和 SublimeJenkins 是专用语法包,通用 Groovy 插件对 Pipeline/Gradle 支持很弱。


















