sublime text 运行 groovy 需系统已安装 groovy 命令且 path 正确,macos/linux 用 sdkman!、windows 用 scoop 安装;需新建 groovy.sublime-build 并配置 cmd、selector 等字段;.groovy 文件需用 gr8 插件启用语法高亮;gradle 脚本必须用 gradlew 执行,不可直接用 groovy 命令。

Sublime Text 本身不运行 Groovy,它只调用你系统里装好的 groovy 命令——这一步不通,后面全卡死。
确认 groovy 命令在终端能跑通
这是 90% 配置失败的根源。Sublime 的构建系统默认继承系统 PATH,如果终端里执行 groovy --version 报 “command not found”,Sublime 肯定也找不到。
- macOS/Linux:推荐用
sdk install groovy(SDKMAN!),自动配好 PATH 和GROOVY_HOME - Windows:用
scoop install groovy,比手动解压+配环境变量更稳 - 别只装 JDK 就以为够了——Groovy 是独立运行时,
java -version成功 ≠groovy --version成功 - 装完必须彻底退出 Sublime Text(不是关标签页),再重新打开,否则旧 PATH 不刷新
- Windows 用户注意:
groovy.bat和groovy(无后缀)行为不同;Build System 应调用后者(SDKMAN/Scoop 安装默认提供)
创建并配置 groovy.sublime-build
路径是 Sublime Text → Tools → Build System → New Build System,粘贴以下内容后保存为 groovy.sublime-build:
{
"cmd": ["groovy", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*):? (.*)$",
"working_dir": "${file_path}",
"selector": "source.groovy",
"shell": false
}
- macOS/Linux 和 Windows(用 SDKMAN/Scoop 安装)都用
"cmd": ["groovy", "$file"],不用cmd /c或groovy.bat -
"shell": false更安全,避免 shell 解析干扰路径(尤其含空格或中文时) -
"selector": "source.groovy"让 Ctrl+B 自动触发该构建系统,前提是文件已设对语法高亮 - 如果脚本依赖外部 JAR,得显式加
-cp,比如"cmd": ["groovy", "-cp", "/path/to/lib.jar", "$file"]
让 .groovy 文件正确高亮
默认打开 .groovy 文件是纯文本,没颜色、没关键字识别——这不是构建问题,是语法定义没加载。
- 用 Package Control 安装
Gr8插件(不是老版Groovy插件),它支持 Gradle DSL 关键字(如implementation) - 安装后右下角点击 “Plain Text” → “Open all with current extension as” → 选
Gr8/Groovy - 如果
build.gradle还显示成 XML 风格,检查Preferences → Settings – Syntax Specific里有没有残留的"syntax": "Packages/XML/XML.tmLanguage",删掉 - 别指望 Gr8 提供语义补全或跳转——它只做高亮,DSL 特性在 Sublime 里就是纯文本处理
运行 build.gradle 脚本要用 gradlew,不是 groovy
Gradle 脚本本质是 Groovy DSL,但执行逻辑由 Gradle 引擎控制,直接用 groovy build.gradle 会报错或行为异常。
- 新建一个 Build System(如
gradle.sublime-build),内容类似: -
"cmd": ["./gradlew", "tasks"](macOS/Linux),Windows 改成"cmd": ["gradlew.bat", "tasks"] - 加
"working_dir": "${project_path:${folder}}"确保在项目根目录执行 - 如果提示
command not found: gradle,说明 PATH 没继承,可在构建系统里硬写"path": "/opt/gradle/bin:/usr/local/bin"(填你真实路径) - Gradle wrapper 的
gradlew权限问题?macOS/Linux 下先chmod +x gradlew
最常被忽略的是:Groovy 构建系统和 Gradle 构建系统是两套东西,不能混用;.groovy 文件用 groovy 命令跑,.gradle 文件必须走 gradlew。路径、编码、JDK 版本(Groovy 4.x 要 JDK 17+)这些细节,错一个就静默失败。











