在IDEA/Android Studio中调试Gradle Plugin插件
Posted MichaelX_Blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在IDEA/Android Studio中调试Gradle Plugin插件相关的知识,希望对你有一定的参考价值。
本文转载自:milovetingting《在android Studio中调试Gradle插件》http://www.milovetingting.cn/2020/02/25/Android/%E5%9C%A8Android%20Studio%E4%B8%AD%E8%B0%83%E8%AF%95Gradle%E6%8F%92%E4%BB%B6
实践过程碰到的问题记录在最后一段“转载后记”。
前言
在开发Gradle插件时,经常会需要通过调试来排查问题,如果只使用日志输出来定位的话,效率不高,可以通过单步调试来定位问题。关于调试插件的资料,网上比较多,最终经过实践,参照这一篇文章 https://juejin.im/post/5dc8d947e51d455523170b7f 的方法,实现了插件的调试。在此也记录一下具体步骤。至于Gradle插件的开发,可以参照其它的资料,或者参考上一篇文章。
新增 Run/Debug Configuration
通过【Run】-【Edit Configurations】新增Configuration
在打开的界面,单击左上角的+,选择Remote
在编辑界面,复制Command line arguments for remote JVM的配置,选择Use module classpath为需要调试的插件,Name项可以随意。
编辑好后,点击OK保存。
创建Run Configuration
在Gradle面板中,为需要引入插件的模块创建Run Configuration。这里以app为例,在app-Tasks-build-build上右击,选择Create …
在打开的编辑界面,将之前复制的参数粘贴进VM options一栏,然后将suspend=n改为suspend=y
点击OK保存后,gradle面板会增加Run Configurations。
调试
在需要调试的插件文件中打上断点,如在apply方法中加上断点。
如图,选择之前创建的Remote类型的Configuration,然后点击右侧的Debug
点击Debug按钮后,会看到Debug面板显示已经连接成功
gradle面板中,引入插件的模块(此处为app)-Run Configuration下的任务,双击运行
可以看到已经能断点调试
转载后记
原文链接:《在Android Studio中调试Gradle插件》http://www.milovetingting.cn/2020/02/25/Android/%E5%9C%A8Android%20Studio%E4%B8%AD%E8%B0%83%E8%AF%95Gradle%E6%8F%92%E4%BB%B6/
笔者按:在参照原文实践过程中,有一个问题,就是在 创建Run Configuration 这步过后,没有出现新的task,原因可能是没有执行gradle sync ,执行sync过后,Run Configuration出现了新的debug task。
以上是关于在IDEA/Android Studio中调试Gradle Plugin插件的主要内容,如果未能解决你的问题,请参考以下文章
android studio学习----android studio断点调试
如何在 Android Studio 中禁用 android 本机调试器
无法在 Android Studio 中调试 onPostExecute