VSCode怎么配置Kotlin项目调试参数

小辰酱_3032

小辰酱_3032

2026-10-19

969人浏览

原创

type必须设为"java",因为kotlin调试依赖jvm和jdwp协议;mainclass需写全限定名如"com.example.appkt";必须配置prelaunchtask确保class已编译。

vscode怎么配置kotlin项目调试参数

launch.json里type不能设成kotlin

VSCode没有原生Kotlin调试器,type字段必须填"java",不是"kotlin"或"kotlin-jvm"。填错会导致调试启动失败、断点灰色不可用,或者直接报“Invalid launch configuration”。

原因很简单:Kotlin编译后是字节码,调试器实际 attach 的是 JVM 进程,所有配置都走 Java 调试协议(JDWP)。Kotlin 插件只提供语言服务,不接管调试流程。

mainClass必须带Kt后缀且路径严格匹配

mainClass值要写成"com.example.AppKt",不是"com.example.App",也不是"AppKt"(缺包名)。

这个类名由 Kotlin 编译器生成规则决定:顶层fun main()所在的文件App.kt → 编译后类名就是AppKt;如果文件在src/main/kotlin/com/example/App.kt,那完整类名就是com.example.AppKt。

常见错误现象:

  • Could not find or load main class com.example.App → 少了Kt
  • No such file or directory: .../out/production/classes/com/example/AppKt.class → 源码没放在src/main/kotlin下,Gradle 没编译出对应 class

必须配preLaunchTask确保class已编译

VSCode 不会自动触发 Gradle 编译。如果launch.json里没设preLaunchTask,调试器会尝试 attach 到一个根本不存在的 class 文件上,结果就是断点不命中、程序直接退出。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载

推荐写法(放在.vscode/launch.json中):

{
  "configurations": [
    {
      "type": "java",
      "name": "Debug App",
      "request": "launch",
      "mainClass": "com.example.AppKt",
      "projectName": "my-kotlin-project",
      "preLaunchTask": "gradle build"
    }
  ]
}

preLaunchTask值要和.vscode/tasks.json里定义的 task 名完全一致;建议用gradle build而不是compileKotlin,前者保证依赖、资源、class 全量就绪。

不要手动加--debug-jvm或-Djdwp参数

Gradle 5.4+ 已默认支持./gradlew run --debug-jvm启动带 JDWP 的 JVM,但 VSCode 调试不需要你手动传这些参数——type: "java"配置会自动注入标准 JDWP 启动参数。

如果你在launch.json里硬塞"vmArgs": "-agentlib:jdwp=...",反而会冲突,导致 JVM 启动失败或端口占用。

真正该检查的是:./gradlew run --debug-jvm能否在终端成功启动并打印Listening for transport dt_socket at address: 5005?如果不行,问题在 Gradle 配置,不在 VSCode。

调试能跑通的关键,往往卡在 class 文件有没有、路径对不对、JVM 是不是真起来了——而不是 launch.json 写得有多花哨。

相关文章

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

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

下载

相关标签:

vscode调试配置 vscode

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

相关专题

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

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

2026.02.12

371

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

1375

18

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

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

2023.07.21

2892

3

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

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

2024.03.14

1989

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

1838

14

热门下载

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

精品课程

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