自定義task生成jar包

2021-08-05 22:50:58 字數 1261 閱讀 6295

如果是簡單的單一工程需求,這個完全可以滿足,但是作為如果想要支撐全公司的業務,這樣就有一些麻煩了,如果公司有十個產品線,則需要十個產品線都加入這些**,感覺還是挺麻煩的

所以想要開發自定義gradle外掛程式,來實現這個功能,接入成本會降低一些.

好久沒有寫自定義外掛程式了,所以這裡記錄下來,也是防止以後忘記。

首先記錄一下,我們常規開發gradle外掛程式的套路,

1.建立extensions來傳遞資料

package com.plugin.buildtool

import org.gradle.api.project

/** *

*/class providerjarpluginextension

}

project.extensions.create('providerjar', providerjarpluginextension,project)

2.加入task

project.task(providerjartask.name,type:providerjartask, dependson: 'assemblerelease')

3.建立task

import org.gradle.api.tasks.bundling.jar

/** *

*/class providerjartask extends jar

if(srcclassdir == null)

from(srcclassdir)

}}

這樣就可以完成乙個外掛程式話開發 然後

./gradlew providerjar

就會在build/libs/下生成project.name.jar檔案,

我們也可以,將jar包移動到我們需要的目錄下,

擴充套件:我們還可以增加過濾等手段來處理我們的jar包

擴充套件:增加過濾的檔案型別,例如,過濾掉某些r.class型別檔案

providerjartask() 

if(archivename == null)

from(srcclassdir)

string p = packagename.replace('.',file.separator); //將包名轉化為路徑

exclude else

}exclude else

}}

自定義標籤庫並打成jar包

1 先看一下呼叫的流程 在所需要的網頁中新增自己寫好的標籤庫,宣告如 taglib prefix yc uri 呼叫寫好的標籤如進入.tld配置檔案中,尋找此標籤名所對應實現的標籤類,呼叫你已經寫好的類 2 在些自定義類時注意 jspwriter與printwriter的關係 jspwriter可以...

Hive自定義UDF的JAR包加入執行環境的方法

hive開發udf函式打包jar檔案後,需將jar檔案放入hive的執行環境,方法有三。先將中重定義的兩個類打包成deftextinputformat.jar,並放到 home hdfs目錄下。1 方法一 使用add jar命令 1 在hive下執行 add jar home hdfs deftex...

Python3中自定義包和匯入自定義包

第一篇部落格,寫得質量可能會不高,但希望能開個好頭,努力成為優秀的程式設計師!今天在惡補python基礎知識,發現我對包,庫,模組的定義非常模糊,於是我回頭看了一下基礎知識,也是一時興起想讓跟我一樣一開始有些困惑的人避坑!要想知道什麼是包,得先了解一下模組的概念!知道了模組,那緊接著看看包 上面是我...