Kapt 注释处理 - 如何显示完整的堆栈跟踪
Posted
技术标签:
【中文标题】Kapt 注释处理 - 如何显示完整的堆栈跟踪【英文标题】:Kapt annotation processing - how to show full stacktrace 【发布时间】:2020-06-05 00:28:15 【问题描述】:我正在使用 Kotlin、Databinding 和 Room 开发一个 android 项目。 有时构建会失败并显示一条错误消息,其中不包含有关究竟出了什么问题的信息,除了它与注释处理器有关(可能有很多原因......)。
缩短示例:
org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: 执行 org.jetbrains 时发生故障
[更多堆栈跟踪行]
原因:org.jetbrains.kotlin.kapt3.base.util.KaptBaseError:注释处理时出错
[更多的堆栈跟踪行]
在 org.jetbrains.kotlin.kapt3.base.Kapt.kapt(Kapt.kt:45) ... 32 更多
找到原因,然后意味着耗时回溯我的步骤(可能使用git stash
)并猜测,当最后的 32 条隐藏线中的一条似乎可能包含一些关于实际问题的有用信息时。
所以问题是:如何显示完整的堆栈跟踪?
我尝试在我的build.gradle
中设置-Xmaxerrs 500
,如此处所示https://kotlinlang.org/docs/reference/kapt.html#java-compiler-options 以及我在SE 上找到的各种变体(抱歉,不记得具体是哪个了)。
没有任何区别。也许我把块放在错误的地方? (尝试模块级别,android -> defaultConfig -> kapt)
【问题讨论】:
***.com/questions/60324017/… 【参考方案1】:将kapt.verbose=true
添加到项目的gradle.properties
文件中。
【讨论】:
不幸的是这并没有改变任何东西:( 这样做后我确实看到了更多输出。 它对我有用。启用后我发现匕首编译错误 经过数小时的挠头后,这对我有用。在输出中发现了一个愚蠢的问题。 它也对我有用。通过详细日志,我能够识别问题。谢谢。以上是关于Kapt 注释处理 - 如何显示完整的堆栈跟踪的主要内容,如果未能解决你的问题,请参考以下文章