Sublime怎么运行Kotlin_Sublime Kotlin代码编译配置【移动】

7次阅读

不能——sublime text 仅是编辑器,需手动配置 kotlin 编译环境:安装 kotlinc 和 jvm、添加至 path,再创建 build system json 文件指定编译命令(如 kotlinc -include-runtime)、运行方式及工作目录,windows 用户还需注意路径空格、powershell 权限和编码问题。

Sublime怎么运行Kotlin_Sublime Kotlin代码编译配置【移动】

sublime text 能不能直接运行 Kotlin 代码

不能——Sublime Text 本身不带 Kotlin 编译器,也没有内置 JVM 环境。它只是个编辑器,kotlincjava 得你自己装好、配进系统 PATH,Sublime 才能调用。很多人卡在这步:写完 .kt 文件点 Ctrl+B,报错 'kotlinc' is not recognizedcommand not found,根本不是 Sublime 的问题,是环境没铺平。

怎么配置 Kotlin Build System(macos / linux

得手动建一个 Build System JSON 文件,告诉 Sublime 哪儿找 kotlinc、怎么编译、怎么运行。别用网上抄来的“一键配置包”,很多早过期了,尤其 Kotlin 1.9+ 后 kotlinc 默认不带 -script 模式,也不再默认输出到当前目录。

  • 确认已安装 Kotlin:终端跑 kotlinc -version 有输出才算数
  • 新建 Sublime Build 文件:Tools → Build System → New Build System
  • 贴入以下内容(注意路径和参数):
{   "shell_cmd": "kotlinc $file_name -include-runtime -d ${file_base_name}.jar && java -jar ${file_base_name}.jar",   "file_regex": "^(.*):([0-9]+):([0-9]+): (.*)$",   "selector": "source.kotlin",   "working_dir": "$file_path" }

保存为 Kotlin.sublime-build,选中它,再按 Ctrl+B 就能编译+运行。

Windows 下常见编译失败原因

Windows 用户最常栽在三件事上:路径空格、PowerShell 权限、JVM 字符编码。比如 Kotlin 文件在 C:Users张三codehello.ktkotlinc 会因路径含中文或空格崩掉;又或者 PowerShell 默认禁用脚本,导致 && 链式命令不执行。

  • 把项目挪到无空格、无中文路径下,例如 D:kt
  • Build System 改用 cmd 而非默认 shell:"shell_cmd": "cmd /c "kotlinc ...""
  • -jvm-target 1.8 参数避免 JDK 版本错配(尤其你装的是 JDK 17+,但 Kotlin 默认生成 17 字节码)
  • 如果输出乱码,加 JVM 参数:java -Dfile.encoding=UTF-8 -jar ...

为什么不用 kotlinc-jvm 直接解释执行

新版 Kotlin 推荐用 kotlinc-jvm 替代老 kotlinc,但它不支持 -script 模式(即不能像 kotlin hello.kt 那样一行跑),必须先编译成 .jar 再运行。有人试 kotlinc-jvm $file_name -include-runtime -d out.jar,结果发现 out.jar 没主类,因为没指定 -entry@file 入口描述——这恰恰是 Sublime Build 最容易漏掉的细节。

  • 简单项目:确保 main 函数在顶层,且文件名与 fun main() 匹配(如 Hello.ktfun main()
  • 复杂结构(package / 多文件):Sublime Build 不适合,该切 IntelliJ idea 或用 gradle
  • 临时测试:不如终端里手敲 kotlinc -script xxx.kts(注意是 .kts 脚本后缀)

Build System 是给单文件快速验证用的,不是替代构建工具。一旦涉及依赖、多源文件或测试,路径、类路径、模块名这些就得靠 build.gradlegradlew 控制,Sublime 只负责写代码。

text=ZqhQzanResources