VSCode运行Kotlin代码:Android开发外的另一种选择

酷晨同学_9450

酷晨同学_9450

2026-06-16

381人浏览

原创

vscode运行kotlin需依赖外部工具链驱动,非装插件即可运行;单文件用code runner配kotlinc命令并加-include-runtime,gradle项目须配置kotlin("jvm")、jvmtoolchain(17)及mainclass.set("xxxkt"),调试推荐launch.json设type为java并匹配kt后缀类名或通过./gradlew run --no-daemon启动。

vscode运行kotlin代码:android开发外的另一种选择

VSCode 能跑 Kotlin,但不是“装插件点一下就成”——它不编译、不管理依赖、不自动找 main,所有运行动作都靠你配对的外部命令或 Gradle 任务驱动。错配环境或路径,NoClassDefFoundError、UnsupportedClassVersionError、Could not find or load main class 就会立刻报给你看。

Code Runner 运行单个 .kt 文件为什么总失败

Code Runner 本质是把你的 .kt 文件丢给 kotlinc 编译再执行 jar,它不读 build.gradle.kts,也不下载任何依赖。

  • fun main() 必须是顶层函数(不能在 class 里),否则编译后找不到入口类 —— 类名是 FileNameKt,不是 FileName
  • 如果用了 kotlinx.coroutines 或其他第三方库,直接报 unresolved reference:Code Runner 不解析依赖,只认标准库
  • kotlinc -include-runtime 必须加,否则生成的 jar 缺少 kotlin-stdlib,java -jar 会炸
  • 终端乱码?在 settings.json 加 "code-runner.runInTerminal": true,让输出走系统终端而非集成终端

Gradle 项目里 ./gradlew run 报 Could not find or load main class

这不是 VSCode 的问题,是 Gradle 配置没对齐 Kotlin 的 JVM 类命名规则。

Android Adb
Android Adb

执行 Android ADB(Android 调试桥)命令,用于设备管理、应用管理、调试和自动化。当用户请求任何与 ADB 相关的操作时使用。

下载
  • mainClass.set("com.example.AppKt") —— 注意末尾的 Kt,不是 App,也不是 App.kt;Kotlin 编译器把顶层 main() 打包进 AppKt.class
  • jvmToolchain(17) 不能省:不写就用 Gradle 自带 JDK(常为 JDK 11),和 Kotlin 1.9+ 编译字节码版本不匹配,触发 UnsupportedClassVersionError
  • 项目根目录必须有可执行的 gradlew,且 build.gradle.kts 中 kotlin("jvm") 插件已声明,否则 VSCode 的 Gradle Tasks 插件压根识别不了任务

launch.json 调试 Kotlin 时断点不生效

VSCode 的 Kotlin 调试不是解释执行,而是 attach 到 JVM 进程。照搬 Java 配置或手填类名,90% 情况下断点白挂。

  • 别用 type: "shell" 直接调 kotlinc 编译 —— 生成的 class 文件路径和源码映射关系错乱,debugger 找不到对应行
  • 正确做法:在 launch.json 中设 "type": "java","mainClass": "com.example.MainKt"(再次强调 Kt 后缀)
  • 更稳的方式是用 Gradle 启动调试模式:./gradlew run --no-daemon -Dorg.gradle.debug=true,然后在 launch.json 里选 Attach to Remote JVM,端口默认 5005
  • 如果项目含多模块或 android 块,mainClass 很可能带 $ 符号(如 MainActivityKt$onCreate$0),手动填几乎必错 —— 此时只能走 Gradle attach

最易被忽略的点:VSCode 从不“理解” Kotlin,它只转发命令、渲染日志、跳转符号。所有可靠性来自你本地的 kotlinc 版本、JDK 版本、Gradle 配置三者是否对齐 —— 差一个点,main 就找不到,debug 就挂不上,连 println 都可能乱码。

相关文章

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

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

下载

相关标签:

vscode android

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系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

vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1315

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

2772

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1949

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1727

8

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

2607

12

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1818

14

热门下载

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

精品课程

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