在Gradle學(xué)習(xí)10——自定義Gradle插件 這篇文章中介紹了編寫(xiě)插件的幾種方式。
編寫(xiě)gradle對(duì)象插件的實(shí)現(xiàn)方式有3種:
- 直接寫(xiě)在build.gradle中,這種方式簡(jiǎn)單省事,比較適合比較小的插件編寫(xiě)
- 在項(xiàng)目根目錄下建立buildSrc目錄
- 建立一個(gè)獨(dú)立的項(xiàng)目工程,以jar包的形式提供依賴
在編寫(xiě)對(duì)象插件的過(guò)程中很多都需要進(jìn)行調(diào)試,本文就介紹一下如何啟動(dòng)gradle遠(yuǎn)程調(diào)試。
啟動(dòng)遠(yuǎn)程調(diào)用
首先點(diǎn)擊Run-> Edit Configuration

然后點(diǎn)擊+號(hào),Add New Configutation,我們選擇Remote

我們新建一個(gè)命名為apt-debug的remote,并且復(fù)制Command Line對(duì)應(yīng)下的這段語(yǔ)句,當(dāng)然了,我們?cè)谶@里實(shí)際上也可以更改端口號(hào)的。也可以用當(dāng)前默認(rèn)的端口號(hào)5005。
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

然后點(diǎn)擊Android Studio右側(cè)的gradle選項(xiàng)

假如我們要選擇app模塊進(jìn)行調(diào)試,可以在build下的assembleRelease任何下,右擊,會(huì)有一個(gè)彈出窗口。

我們點(diǎn)擊Create 選項(xiàng)。會(huì)有如下窗口:

在VM options下填入我們剛才復(fù)制的信息,要注意的是把suspend對(duì)應(yīng)的值改為y。

然后會(huì)生成一個(gè)Run Condigurations的Task group。

雙擊這個(gè)assembleRelease的調(diào)試任務(wù),這個(gè)這個(gè)任務(wù)就會(huì)被掛起,等待著調(diào)式

然后我們選擇apt-debug,在點(diǎn)擊右側(cè)的debug按鈕,就可以開(kāi)始調(diào)試了。

使用命令行
debug 模式運(yùn)行 gradle 腳本
gradle :app:clean -Dorg.gradle.debug=true --no-daemon
聲明環(huán)境變量 GRADLE_OPTS
export GRADLE_OPTS="-Xdebug - Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"
attach Debugger
記住,如果想繼續(xù)調(diào)試,就以Debug方式再次運(yùn)行我們?cè)赗un Configuration下生成的assembleDebug或者assembleRelease。
