如果是簡單的單一工程需求,這個完全可以滿足,但是作為如果想要支撐全公司的業務,這樣就有一些麻煩了,如果公司有十個產品線,則需要十個產品線都加入這些**,感覺還是挺麻煩的
所以想要開發自定義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基礎知識,發現我對包,庫,模組的定義非常模糊,於是我回頭看了一下基礎知識,也是一時興起想讓跟我一樣一開始有些困惑的人避坑!要想知道什麼是包,得先了解一下模組的概念!知道了模組,那緊接著看看包 上面是我...