Sublime Text配置Kotlin语言开发与编译环境

轻墨君_1712

轻墨君_1712

2026-05-01

571人浏览

原创

sublime text 不能直接运行 kotlin,必须先确保终端中 kotlinc 和 java 命令可用;再安装 languagekotlin 插件实现语法高亮,并配置 kotlin.sublime-build(含 -include-runtime)和 kotlinscript.sublime-build 两个构建系统分别编译运行 .kt 和解释执行 .kts 文件。

sublime text配置kotlin语言开发与编译环境

Sublime Text 不能直接运行 Kotlin,所有“编译+运行”效果都依赖你本地终端里 kotlinc 和 java 命令是否真正可用——这是唯一前提,其余配置全是围绕它展开的。

确认 kotlinc 和 java 在终端能直接执行

这是最常被跳过、也最容易卡住的一步。Sublime 的 Build System 只是调用 shell 命令,它不会帮你装 JDK 或 Kotlin 编译器。

  • 打开终端,运行 kotlinc -version,应输出类似 Kotlin version 1.9.24;若报 command not found,说明没装或没配进 PATH
  • 同样运行 java -version,Kotlin 1.9+ 推荐用 JDK 17+,低于 JDK 11 可能编译失败
  • 推荐安装方式:用 SDKMAN!(sdk install kotlin + sdk install java 17.0.1-tem),自动管理 PATH;或手动解压 Kotlin CLI zip 包后,把 kotlinc/bin 加入系统环境变量
  • Windows 用户注意:kotlinc.bat 和 java.exe 都必须能在任意路径下直接敲命令运行,否则 Sublime 调用会静默失败

安装 LanguageKotlin 插件启用语法高亮

没有这个插件,.kt 文件只是纯文本,连关键字都无颜色,写错 fun main() 都难发现。

左手医生开放平台
左手医生开放平台

左手医生开放平台是一款面向智慧医疗服务建设的 AI 医疗开放平台。

下载
  • 通过 Package Control 安装插件:Ctrl+Shift+P → 输入 Package Control: Install Package → 搜索并安装 LanguageKotlin
  • 安装后,打开 .kt 文件,右下角状态栏应显示 Kotlin;若仍显示 Plain Text,点击它手动选为 Kotlin
  • 注意插件名是 LanguageKotlin,不是 Kotlin 或 KotlinSupport —— 错装其他同名插件会导致 selector 不匹配,后续构建系统不触发
  • 该插件只提供高亮和基础括号匹配,不带 LSP 补全或类型检查,别指望它有 IntelliJ 那种智能

配置 kotlin.sublime-build 实现编译+运行

这个 Build System 负责把 kotlinc 编译成 jar,再用 java -jar 运行,关键参数一个都不能少。

  • Tools → Build System → New Build System,粘贴以下内容(注意 selector 必须是 source.kotlin,大小写敏感):
{
  "cmd": ["kotlinc", "$file_name", "-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",
  "shell": true
}
  • -include-runtime 是必须的:Kotlin 标准库不内置于 JVM,不加这参数,运行时会报 NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
  • shell 设为 true 才能支持 && 连写两个命令;设为 false 时,Sublime 会把整个数组当单个命令传给系统,直接失败
  • 文件路径不能含中文或空格,否则 $file_name 展开后 shell 解析出错;建议项目放 C:/kotlin-demo 或 ~/kotlin 这类纯英文路径
  • main 函数必须是顶层函数,签名严格为 fun main() { ... } 或 fun main(args: Array<string>) { ... }</string>,Kotlin 1.9+ 不再接受 fun main(argv: Array<string>)</string> 这种旧写法

单独配置 kotlinscript.sublime-build 运行 .kts 脚本

如果你写的是 Kotlin Script(.kts),不要用上面那个 build,得换用 kotlin 命令直解释执行,且需额外处理脚本依赖。

  • 新建另一个 Build System,命名为 kotlinscript.sublime-build:
{
  "cmd": ["kotlin", "$file_name"],
  "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
  "working_dir": "${file_path}",
  "selector": "source.kts",
  "shell": true
}
  • selector 必须是 source.kts,对应 .kts 文件;LanguageKotlin 插件默认已支持该语法类型
  • 确保你装的是完整 Kotlin CLI(不是仅 kotlinc),因为 kotlin 命令才是解释器;SDKMAN! 安装默认包含,手动解压包需确认 bin/ 下有 kotlin 或 kotlin.bat
  • .kts 文件里可以用 //dep org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3 这类注释声明依赖,但首次运行会联网下载,可能卡住几秒——这不是 Sublime 的问题,是 Kotlin Script 的行为
  • 别在 .kts 里写 class 或 package 声明,脚本模式只认顶层表达式和函数

最容易被忽略的是:Build System 的 selector 和文件实际语法类型必须严格一致,哪怕多一个点、少一个字母,Sublime 就不会自动激活该构建;而所有失败都不会弹错误框,只会静默不响应——这时候先去终端手动跑一遍 kotlinc xxx.kt -include-runtime -d xxx.jar && java -jar xxx.jar,确认它本身能通,再回头查 Sublime 配置。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Kotlin协程编程与Spring Boot集成实践
Kotlin协程编程与Spring Boot集成实践

本专题围绕 Kotlin 协程机制展开,深入讲解挂起函数、协程作用域、结构化并发与异常处理机制,并结合 Spring Boot 展示协程在后端开发中的实际应用。内容涵盖异步接口设计、数据库调用优化、线程资源管理以及性能调优策略,帮助开发者构建更加简洁高效的 Kotlin 后端服务架构。

2026.02.12

351

18

Java Kotlin协程与异步编程实战
Java Kotlin协程与异步编程实战

本专题围绕 Kotlin 协程与异步编程展开,讲解挂起函数、协程作用域、异步任务调度及并发控制方法。通过实际项目案例,帮助开发者提升后端服务性能,实现高效异步任务处理与稳定性保障。

2026.04.13

159

16

Kotlin Android开发教程大全
Kotlin Android开发教程大全

系统讲解 Google 官方推荐的 Android 开发首选语言 Kotlin 的核心知识与工程实践,涵盖 Kotlin 简洁语法(空安全/数据类/扩展函数/解构声明/作用域函数)与 Java 互操作、集合操作与函数式编程、协程(Coroutines)异步编程(suspend/launch/async/Flow)、Jetpack Compose 声明式 UI 开发(状态管理/组合函数/导航/动画)、MVVM / MVI 架构设计与 Vi

2026.06.03

248

19

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

2026.09.30

120

10

LLVM RISC-V参数配置教程
LLVM RISC-V参数配置教程

本专题介绍LLVM对RISC-V基础ISA和扩展的支持方式,涵盖RV32、RV64、标准扩展、实验性扩展、厂商扩展、-menable-experimental-extensions和版本差异。

2026.09.30

100

14

LLVM IR中间表示入门指南
LLVM IR中间表示入门指南

本专题整理LLVM IR的核心概念,包括中间表示作用、模块结构、函数、基本块、SSA形式、类型系统和常见语法,帮助新手理解LLVM编译流程中的关键层。

2026.09.30

80

12

PDF转图片方法
PDF转图片方法

需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

2026.09.30

60

26

PixTV AI视频生成与无限画布创作
PixTV AI视频生成与无限画布创作

PixTV专题整理AI视频与视觉内容创作相关功能使用教程,涵盖AI生图、视频生成、无限画布、多模型创作、素材管理、声音音乐及视频剪辑等功能,帮助用户快速掌握PixTV从创意到成片的完整制作方法。

2026.09.29

80

15

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

2026.09.23

280

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程