VSCode本身不编译Kotlin,运行依赖外部工具链:单文件用kotlinc(需配置code-runner.executorMap并确保-top-level main与-include-runtime),项目必须用Gradle+JDK 17+(含kotlin("jvm")和jvmToolchain(17)),安卓开发还需Android Developer Tools插件及完整SDK路径配置。

VSCode 本身不编译、不运行 Kotlin,所谓“环境”其实是你手动拼起来的工具链组合——核心就三样:kotlinc(单文件)、Gradle(项目)、JDK 17+(底层支撑)。安卓开发必须走 Gradle + Android SDK,别指望 Code Runner 点一下就装进模拟器。
用 kotlinc 运行单个 .kt 文件,只适合语法验证
这是最快看到 println 输出的方式,但仅限无依赖、无包声明、顶层 fun main() 的脚本:
- 必须确保终端能直接执行
kotlinc -version,路径要加进系统PATH(如/opt/homebrew/bin/kotlinc) -
settings.json中配code-runner.executorMap,命令里不能漏-include-runtime,否则报NoClassDefFoundError: kotlin/jvm/internal/Intrinsics - 类名自动变成
FileNameKt,所以main()必须是顶层函数,不能写在class里 - 一旦用了
package com.example或引入kotlinx.coroutines,这条路立刻失效
标准 Kotlin JVM 项目必须用 Gradle,不是 VSCode 决定怎么跑
VSCode 不解析 build.gradle.kts,它只把 Gradle 当成一个外部命令执行器。你配置错一行,./gradlew run 就会失败,而 VSCode 很可能连报错都截不到:
-
build.gradle.kts至少要有kotlin("jvm")插件声明和jvmToolchain(17),缺一不可;不写jvmToolchain容易触发UnsupportedClassVersionError -
mainClass.set("com.example.AppKt")中的AppKt是生成类名,不是你写的文件名App.kt—— 少个Kt后缀,Could not find or load main class - 不要点右上角 ▶️ 按钮,它经常灰色或没反应;可靠方式永远是终端执行
./gradlew run,或侧边栏「GRADLE」→「Tasks」→「run」
安卓开发只认 Android Developer Tools + Gradle 构建任务
VSCode 的 Kotlin 插件对安卓毫无意义,真正干活的是 Google 官方的 Android Developer Tools 插件,但它只负责调 adb 和显示 Logcat,不编译也不打包:
- 必须提前手动安装 Android SDK,并设好
ANDROID_HOME和PATH(含platform-tools),adb devices在终端能列出设备,插件才可能工作 - 项目结构必须完整:根目录有
gradlew,app/build.gradle.kts含id("com.android.application"),且AndroidManifest.xml存在 - 调试不能靠
launch.json直接启动——Kotlin 编译后类名带$符号(如MainActivityKt$onCreate$0),手动填必错;正确做法是./gradlew installDebug+adb logcat,或用插件的「Install APK」按钮
最常被忽略的一点:所有路径(java.home、java.configuration.runtimes、kotlin.compilerPath、ANDROID_HOME)都必须用绝对路径,且 VSCode 启动前就得生效——改完设置不重启,等于白配。


















