不能。Sublime Text 仅为文本编辑器,无内置 Kotlin 编译器或 JVM,需手动安装配置 kotlinc、设置 PATH 和 KOTLIN_HOME,并通过 Build System 调用外部命令编译运行。
Sublime Text 能不能直接运行 Kotlin 代码
不能。Sublime Text 本身只是文本编辑器,不带 Kotlin 编译器或 JVM 运行时,
命令没装好、没配进
,它连语法高亮都可能出问题——更别说编译执行了。
实际能做的只有三件事:语法高亮、基础补全、配合外部命令(比如调
或
)跑脚本。别指望它变成 IntelliJ。
必须先在系统里装好 Kotlin 编译器(推荐用
或官网 zip 包解压后配
和
)
验证是否生效:终端里敲
要有输出,否则 Sublime 里所有构建配置都是白搭
Windows 用户特别注意:
改完要重启 Sublime,否则它读不到新环境变量
怎么让 .kt 文件有语法高亮和基础补全
Sublime 默认不认识
,得手动关联语法定义。最稳的方式是装社区维护的插件
,不是“Kotlin”也不是“kotlin-language”——名字错一个就失效。
用 Package Control 安装时搜
(GitHub 仓库名是
)
装完打开任意
文件,右下角状态栏点语法名 → 选
,或者按
→ 输入
补全是有限的:只基于文件内符号,不解析依赖、不跳转、不提示 stdlib 函数参数——这是编辑器能力边界,不是配置问题
怎么配置 Build System 来编译并运行 Kotlin 脚本
Build System 是 Sublime 调外部命令的唯一可靠方式。重点不是写多 fancy 的 JSON,而是路径、参数、工作目录这三项对不对。
仿Sublime和notepad++编辑器效果
仿Sublime和notepad++编辑器效果
下载
新建
,贴入以下内容(Linux/macOS):
Windows 用户把
换成
,
前加
,否则命令链中断
会覆盖同名 jar,如果想每次 clean,得加
(macOS/Linux)或
(Windows)
报错
?大概率是
函数没写对:必须是顶层函数,且签名是
为什么改了 Build System 还是 build 失败
90% 是环境变量没继承进来。Sublime 在 GUI 启动时(比如从 Dock 或开始菜单点开),根本看不到你 shell 里配的
、
,它只认系统级环境变量。
macOS:用
注册,或改
;别信“用终端启动 Sublime 就行”,那只是临时 workaround
Linux(GNOME):改
或
,然后完全退出桌面重进
Windows:必须在“系统属性 → 高级 → 环境变量”里设,用户变量 or 系统变量都行,但改完要关掉所有 Sublime 实例
验证方法:建个空 build system,
,看输出里有没有
所在目录
真正麻烦的从来不是怎么写 JSON,而是让 Sublime 知道你在哪装了 Kotlin。这点漏了,后面全白忙。
kotlinPATH kotlinc javaSDKMAN!KOTLIN_HOMEPATHkotlinc -versionPATH.ktKotlin-sublime-packageKotlin-sublime-packagesublimelsp/Kotlin-sublime-package.ktKotlinCtrl+Shift+PSet Syntax: KotlinTools → Build System → New Build System
{
"shell_cmd": "kotlinc $file -include-runtime -d $file_base_name.jar && java -jar $file_base_name.jar",
"file_regex": "^(.*):([0-9]+):([0-9]+):.*$",
"working_dir": "$file_path",
"selector": "source.kotlin"
}
&&&java -jarcmd /c$file_base_name.jarrm $file_base_name.jardelCould not find or load main classmainfun main(args: Array) { ... } PATHKOTLIN_HOMElaunchctl setenv PATH "..."/etc/paths~/.profile/etc/environment"shell_cmd": "echo $PATH"kotlinc