Intellij / Android Studio 调试 Gradle Plugin

网上搜了很久,没发现一篇靠谱的,很多都是版本比较老的Intellij和gradle版本,和现在的都不合适。

这里的教程是指 Intellij 2017,以及Android Studio 2.2以上,gradle 2.14.1以后的版本。

以DexKnifePlugin为例,


1、创建remote调试任务:

选择 Eidt Configurations



点左上角的 + 号,选择 remote。Name可以随意命名,其他配置可以不用动,端口就5005,点ok关闭



2、打开Terminal窗口(一般在底下的工具栏上),在当前的工程目录下,输入 :

gradlew assembleDebug -Dorg.gradle.daemon=false -Dorg.gradle.debug=true。

assembleDebug 可以为其他的构建命令,但参数-Dorg.gradle.daemon=false -Dorg.gradle.debug=true要有。

或者新建一个cmd或bat文件,放入命令,不用每次都输入。


要确保gradlew 可运行,有问题的上网搜,这里不赘述。


3、在Plugin代码中打好断点:


注意,*.gradle脚本是无法调试的。


这里最重要的是被调试的构建过程不使用当前的IDE直接运行,最简单就是使用Terminal。


Terminal的命令中点回车后,会出现 To honour the JVM settings for this build a new JVM will be forked. 这行提示,并且会一直停在这里,说明在等待调试。



4.开始调试

这时候选择第二步中创建的remote任务,并使用调试启动(下图最右边的调试按钮),而不是make或直接运行:



注意,这时候窗口的焦点实在debug的输出窗口上,Terminal还是被挂起的,要点下Terminal窗口,gradle任务才会继续执行,并进入调试状态。


另外,其他的状况我没遇到过,多请自行研究和解决,并再此评论你遇到的问题和解决方法。

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页