启用Gradle远程调试

Gradle学习10——自定义Gradle插件 这篇文章中介绍了编写插件的几种方式。
编写gradle对象插件的实现方式有3种:

  1. 直接写在build.gradle中,这种方式简单省事,比较适合比较小的插件编写
  2. 在项目根目录下建立buildSrc目录
  3. 建立一个独立的项目工程,以jar包的形式提供依赖

在编写对象插件的过程中很多都需要进行调试,本文就介绍一下如何启动gradle远程调试。

启动远程调用

首先点击Run-> Edit Configuration

Edit Configuration.png

然后点击+号,Add New Configutation,我们选择Remote


Add New Configutation.png

我们新建一个命名为apt-debug的remote,并且复制Command Line对应下的这段语句,当然了,我们在这里实际上也可以更改端口号的。也可以用当前默认的端口号5005。

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
Remote.png

然后点击Android Studio右侧的gradle选项


gradle.png

假如我们要选择app模块进行调试,可以在build下的assembleRelease任何下,右击,会有一个弹出窗口。

assembleRelease.png

我们点击Create 选项。会有如下窗口:

Create.png

在VM options下填入我们刚才复制的信息,要注意的是把suspend对应的值改为y

VM options.png

然后会生成一个Run Condigurations的Task group。


Run Condigurations.png

双击这个assembleRelease的调试任务,这个这个任务就会被挂起,等待着调式


等待着调式.png

然后我们选择apt-debug,在点击右侧的debug按钮,就可以开始调试了。


点击右侧的debug按钮.png

使用命令行

debug 模式运行 gradle 脚本

gradle :app:clean -Dorg.gradle.debug=true  --no-daemon

声明环境变量 GRADLE_OPTS

export GRADLE_OPTS="-Xdebug - Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"     

attach Debugger

记住,如果想继续调试,就以Debug方式再次运行我们在Run Configuration下生成的assembleDebug或者assembleRelease。

再次debug.png

相关阅读

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,974评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 转载注明出处:http://www.jianshu.com/p/5255b100930e 0. 前言 完全由个人翻...
    王三的猫阿德阅读 2,581评论 0 4
  • 刚买了两天的新手机由于没有买保护套摔坏了屏。看着新买的手机屏碎的有点儿厉害,我的心开始是崩溃的。但不幸中的万幸...
    忽尔今至阅读 186评论 0 0
  • ○○有次周日晚上,临睡前,我发现儿子打着手电筒蹑手蹑脚去客厅,看见我之后立刻闪回房间。 ○○我就敲门去儿子房间问他...
    写作的奶爸阅读 309评论 0 1