调试 Kotlin 符号处理 (KSP)

Max*_*kov 5 kotlin kotlin-symbol-processing

如何使用Idea和Gradle调试KSP?

在调试模式下从 IDE运行build任务不会将 IDE 附加到进程。

有没有任何命令行方法可以让处理器等待 IDE 连接到进程?

(我使用的是KSP 1.5.31-1.0.0

Kik*_*iwa 6

./gradlew :sample:build --no-daemon -Dorg.gradle.debug=true -Dkotlin.compiler.execution.strategy=in-process

如果没有守护进程的调试太慢(每次都要启动jvm),./gradlew -Dkotlin.daemon.jvm.options="-Xdebug,-Xrunjdwp:transport=dt_socket\,address=8765\,server=y\,suspend=n" ...请在调试器中附加到KotlinCompileDaemon进程。

更多信息请参见: https: //github.com/google/ksp/issues/31

  • 我还使用 Idea 中带有断点的单元测试以及 Idea 中与进程中的 gradle 调试和编译器相关的 2 个选项。 (2认同)