1.配置java虚拟机jvm远程调试
例如
启动程序配置
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=127.0.0.1:5005 -jar KtTest.jar
IDEA配置远程调试JVM
idea编译的Kt代码为
// IntelliJ API Decompiler stub source generated from a class file
// Implementation of methods is not available
public fun main(): kotlin.Unit { /* compiled code */ }
public fun mainc(): kotlin.Unit { /* compiled code */ }
利用
fernflower.jar工具反编译出源代码
命令如下
java -jar fernflower.jar KtTest.jar %cd%\src
在IDEA中kt.class中选择调试源,并打上断点
堆栈中的行一定要和fernflower.jar反编译出来的行断点保持一致