当前位置: 首页 > 知识库问答 >
问题:

调试Kotlin符号处理(KSP)

裴俊雅
2023-03-14

如何使用Idea和Gradle调试KSP?

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

有没有任何命令行方法让处理器等待IDE附加到进程?

(我使用的是KSP1.5.31-1.0.0

共有1个答案

孟鸿德
2023-03-14

/gradlew:sample:build——没有守护进程——Dorg。格拉德尔。debug=true-Dkotlin。编译器。处决策略=过程中

如果没有守护进程的调试太慢(每次都必须启动jvm),/格拉德卢-德科特林。守护进程。jvm。options=“-Xdebug,-Xrunjdwp:transport=dt_socket\,address=8765\,server=y\,suspend=n” 并附加到调试器中的KotlUncompileDaemon进程。

更多信息请点击此处:https://github.com/google/ksp/issues/31

 类似资料:
  • 我最近一直在玩KSP,并设法开发了有趣的功能(例如基于布局ID的自动回收器视图和视图持有人生成器),到目前为止一切都很好。 但是,我现在正在尝试做一些不同于根据我设计的注释创建文件的事情。与其创建文件,我只想用我注释的类/对象填充一个列表。 示例: ClassB.kt代码 我的自定义KSP将执行以下操作 收集所有由my注释的类/对象(通常) 使用适当的参数创建它们的实例(在本例中只是一个上下文)

  • 我已经在Kotlin工作了几个月,我开始制作库,就像我在java源代码中做的那样,而且工作得很好。但是,我有一个很大的问题与这些库,我不能调试他们(而我从来没有问题的java的)。当我进入消息来源时,我唯一拥有的是: 我尝试了很多方法,比如在gradle文件中添加源集,在gradle中创建任务来查找源并将它们附加到JAR/AAR以及其他一些我不记得的事情,但绝对没有效果。 我的问题是:编译kotl

  • 这是一个按照字母顺序排序的,由Autoconf宏定义的C预处理符号的列表。为了与Autoconf协同工作,C源代码应该 在#if指令中使用这些名字。 _ CHAR_UNSIGNED _ALL_SOURCE _MINIX _POSIX_1_SOURCE _POSIX_SOURCE, _POSIX_SOURCE _POSIX_VERSION c C_ALLOCA CLOSEDIR_VOID const

  • 我已经上传了一个flutter模糊包到play商店。我收到以下警告: 此应用程序包包含本机代码,您尚未上载调试符号。我们建议您上载一个符号文件,以使崩溃和ANR更易于分析和调试。 混淆你的应用程序然后添加调试符号难道不是毫无意义吗? 混淆背后的想法是通过使代码不可读来进行困难的逆向工程。给出调试符号文件是否与给出解密混淆映射相同?

  • 在缺省情况下,大多数程序和库都是带调试符号(使用 gcc 的 -g 选项)编译的。 当调试一个带调试符号的程序时,调试器不仅能给出内存地址,还能给出函数和变量的名字。 但是,这些调试符号明显地增大了程序和库。想知道这些调试符能带来多大的差异,请看下面的统计资料: 带调试符号的动态 bash 二进制文件:1200 KB 不带调试符号的动态 bash 二进制文件:480 KB 带调试符号的 Glibc

  • 主要内容:错误消息,复杂的命令行,子程序,Windows版本通常情况下,运行批处理文件时可能会遇到问题,而且大多数情况下都需要以某种方式调试批处理文件,以确定是批处理文件本身的问题。 以下是一些可以帮助调试批处理脚本文件的技术。 错误消息 要找出消息的来源,请按照下列步骤操作 - 第1步 - 移除,即或。 第2步 - 使用必要的命令行参数运行批处理文件,将所有输出重定向到日志文件以供以后比较。 第3步 - 在文件中搜索错误消息 第4步 - 检查上一行是否有