我正在编写一个注解处理器,并最近从使用默认的annotationProcessor类型转换为kapt,使用kotlin-kapt插件。
我通过使用命令进行调试:
./gradlew --no-daemon -Dorg.gradle.debug=true :app:clean :app:compileDebugJavaWithJavac
完整的指导请看这里:https://dev59.com/Lmoy5IYBdhLWcg3wZdGr#42488641
然后运行远程调试配置。当我使用annotationProcessor时,可以触发断点,并且进行良好的调试。使用kapt时,我的处理器运行,但我无法调试它。没有任何断点被触发。
我的kotlin版本是1.1.2-3
./gradlew clean :sample:build --no-daemon -Dorg.gradle.debug=true -Dkotlin.compiler.execution.strategy="in-process" -Dkotlin.daemon.jvm.options="-Xdebug,-Xrunjdwp:transport=dt_socket\,address=5005\,server=y\,suspend=n"
。在命令行中运行此命令,然后当您感到舒适时,再附加远程调试配置,而不是在app:kaptDebugKotlin
任务或其他任务期间。 - Den Drobiazko