Intellij / Android Studio 调试 Gradle Plugin

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

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

以DexKnifePlugin为例,

1、创建remote调试任务:

选择 Eidt Configurations

点左上角的 + 号,选择 remote(目前为 remove JVM debug)。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脚本,gradlew assembleDebug 改为 gradlew build。

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

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

4.开始调试

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

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

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

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值