自定義Gradle plugin

 本文主要說明一下自定義Gradle plugin的步驟了罪,在實現(xiàn)一個自定義plugin的時候主要有以下幾步:

1聪全,在project下新建一個module,隨便選擇什么類型难礼,反正最后都要清空,src/main目錄蛾茉。
2,修改moudule下的build.gradle文件改成如下格式

apply plugin:'groovy'
dependencies{
    compile gradleApi()
    compile localGroovy()
}

3臀稚,在main目錄下新建文件夾com.test.xxx三痰,在此文件夾下新建文件MyPlugin.groovy,這個文件的內(nèi)容很簡單散劫,如下所示:

package com.hx.plugin

import org.gradle.api.Plugin
import org.gradle.api.Project

public class MyPlugin implements Plugin<Project>{
    @Override
    void apply(Project project) {
        System.out.println ("start ")
        System.out.println ("hello my gradle plugin")
        System.out.println ("end")
    }
}

4,發(fā)布到服務(wù)器或者本地倉庫赖条,
修改module的build.gradle文件,添加maven支持纬乍,這個例子是發(fā)布到本地maven倉庫。修改后的文件如下所示:

apply plugin:'groovy'
apply plugin: 'maven'
dependencies{
    compile gradleApi()
    compile localGroovy()
}

repositories {
    mavenCentral()
}

group = 'com.hx.plugin'
version = '1.0.0'

uploadArchives {
    repositories {
        mavenDeployer{
            //提交到遠程服務(wù)器:
            // repository(url: "http://www.xxx.com/repos") {
            //    authentication(userName: "admin", password: "admin")
            // }
            //本地的Maven地址設(shè)置為D:/repos
            repository(url: uri('E:/develop/repos'))
        }
    }
}

group指的是群組名仿贬,version指的是版本號,后面的uri指的是本地倉庫地址蜓氨。修改完之后,點擊Android Studio右邊的gradle穴吹,找到uploadArchives任務(wù),雙擊執(zhí)行港令,就會在指定的目錄生成文件棘钞。
5,使用自定義plugin
在plugin生成之后宜猜,就可以使用了,首先在project的build.gradle中添加maven倉庫的地址姨拥。

buildscript {
    repositories {
        jcenter()
        maven {
            url uri('E:/develop/repos')
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
        classpath 'com.hx.plugin:mylibrary:1.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

url是先前我們指定的倉庫地址,classpath是 group +module+版本號柴罐,在使用的module的build.gradle中添加

apply plugin: 'com.hx.gradle'

這個plugin的名稱就是在resource下的那個properties文件的名稱。 到這里一個簡單的自定義Gradle plugin就完成了革屠。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末排宰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子板甘,更是在濱河造成了極大的恐慌,老刑警劉巖盐类,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異枪萄,居然都是意外死亡,警方通過查閱死者的電腦和手機呻引,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門逻悠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來元践,“玉大人童谒,你說我怎么就攤上這事〖⒁粒” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵愉豺,是天一觀的道長茫因。 經(jīng)常有香客問我,道長冻押,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任括袒,我火速辦了婚禮稿茉,結(jié)果婚禮上锹锰,老公的妹妹穿的比我還像新娘漓库。我一直安慰自己,他們只是感情好米苹,可當(dāng)我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布蘸嘶。 她就那樣靜靜地躺著良瞧,像睡著了一般训唱。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上况增,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天,我揣著相機與錄音澳骤,去河邊找鬼。 笑死为肮,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的茅特。 我是一名探鬼主播,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼白修,長吁一口氣:“原來是場噩夢啊……” “哼重斑!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起绸狐,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎突琳,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拆融,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡啊终,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了趟脂。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡昔期,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出硼一,到底是詐尸還是另有隱情,我是刑警寧澤愧哟,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布哼蛆,位于F島的核電站蕊梧,受9級特大地震影響人芽,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜萤厅,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望楼誓。 院中可真熱鬧,春花似錦疟羹、人聲如沸禀倔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至鞋既,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間邑闺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工抵乓, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人灾炭。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像咆贬,于是被迫代替她去往敵國和親帚呼。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容