【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
近期打算写一个编译时的小插件,解决 mybatis-plus 和 tk-mapper 紧耦合的问题。小插件需要在 java 编译时生成一些代码。这个思想,在andoid 的 黄油刀butterknife,Lomok 已经成熟。现在代码写了一些,需要debug编译时的代码,头就大了。查了一些资料,并进行试验,终于找到了debug的方法。下面详细记录下怎么debug这些代码。
(1)java 提供了 javax.annotation.processing.AbstractProcessor 在编译时处理 注解 。即是插件的处理类。我们需要debug这些类及其相关联的类。所以debug的断点在这里。然后,需要在idea进行一些设置。先配置一个远端的debug配置。
这里的module 选择你要debug的模块。
(2)在命令中进入引用该模块的应用根目录,使用命令listen需要调试的模块连接。
mvnDebug clean compile
它会 打印提示,并在命令行中等待连接
Listening for transport dt_socket at address: 8000
(3)最后启动之前配置模块。
这样就可以进行调试了
来源:oschina
链接:https://my.oschina.net/thinwonton/blog/3146440