国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Gradle原型模板工具調(diào)研

劉德剛 / 690人閱讀

摘要:為了方便小組里的同學(xué)快速創(chuàng)建新項(xiàng)目,并且保持框架及配置的一致性,維護(hù)了模板工程。模板工程基于,用不了,需要另外找。

為了方便小組里的同學(xué)快速創(chuàng)建新項(xiàng)目,并且保持框架及配置的一致性,維護(hù)了模板工程。接下來(lái)需要一個(gè)好用的工具來(lái)快速生成新項(xiàng)目。

模板工程基于Gradle,用不了Maven Archetype,需要另外找。

工具需要滿足的條件

模板工程需要更新,能直接跑單元測(cè)試,所以工具不能限制工程結(jié)構(gòu),不能讓模板工程來(lái)適應(yīng)這個(gè)工具

模板工程放在公司內(nèi)網(wǎng),所以工具不能強(qiáng)制要求模板上傳到工具自建的公網(wǎng)倉(cāng)庫(kù)

網(wǎng)上找了一些工具,目前找到的不太符合要求

gradle-archetype-plugin:不符合條件1

yeoman:不符合條件2

后來(lái)自建了一段小腳本及操作規(guī)范來(lái)解決這個(gè)問(wèn)題

模板工程:1)包名唯一標(biāo)識(shí)使用prjName,可定制,2)需要配置的地方注釋里加上標(biāo)記[config],可定制

執(zhí)行自建的 dup_architype.sh 創(chuàng)建新項(xiàng)目

在IDE打開新項(xiàng)目,搜索[config]找到所有需要手動(dòng)修改配置的地方,根據(jù)注釋及上下文做出修改

dup_architype.sh 的大致執(zhí)行流程:

把模板工程拷貝到指定的新項(xiàng)目所在路徑,排除掉不需要的目錄

重命名prjName這個(gè)唯一標(biāo)識(shí)為自定義的業(yè)務(wù)名稱

替換項(xiàng)目文件中的prjName為自定義的業(yè)務(wù)名稱

dup_architype.sh 內(nèi)容:

# template project absolute path
SRC=/Users/sandynz/Documents/projects/boottemp/
# target project absolute path
TARGET=/Users/sandynz/Documents/projects/prj1
# target project package name
PKGNAME=prj1
# copy
echo "start copy"
rsync -avz --exclude out --exclude build --exclude target --exclude .git --exclude .gradle --exclude .idea $SRC $TARGET
# rename dir
echo "start rename dir"
find $TARGET -name prjName -execdir mv {} $PKGNAME ";"
# replace content
echo "start replace content"
find $TARGET -type f -exec sed -i "" "s/prjName/$PKGNAME/g" {} ;

該腳本里的 SRC/TARGET/PKGNAME 都需要在執(zhí)行之前修改。含義如下:

SRC : 模板工程絕對(duì)路徑

TARGET : 目標(biāo)項(xiàng)目絕對(duì)路徑

PKGNAME : 目標(biāo)項(xiàng)目唯一標(biāo)識(shí),用于包名,不包含com.xyz.這樣的前綴

腳本預(yù)設(shè)

工程使用 Gradle/Git/IntellijIDEA,不需要復(fù)制的目錄已經(jīng)在rsync參數(shù)排除掉;其它需要排除的目錄可以添加--exclude自行排除

包名中的唯一標(biāo)識(shí)是prjName(整體包名com.xyz.prjName),可自行定制

實(shí)際使用下來(lái)還算方便,簡(jiǎn)單有效。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/73722.html

相關(guān)文章

  • 基于IDEA Plugin插件開發(fā),擼一個(gè)DDD腳手架

    摘要:作者小傅哥博客沉淀分享成長(zhǎng),讓自己和他人都能有所收獲接下來(lái)還需要把我們創(chuàng)建的工程模板以及數(shù)據(jù)服務(wù)配置到中,這樣在插件啟動(dòng)的時(shí)候就可以把我們自己插件啟動(dòng)起來(lái)了。作者:小傅哥博客:https://bugstack.cn沉淀、分享、成長(zhǎng),讓自己和他人都能有所收獲!???? 接下來(lái)還需要把我們創(chuàng)建的工程模板以及數(shù)據(jù)服務(wù)配置到 plugin.xml 中,這樣在插件啟動(dòng)的時(shí)候就可以...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • 從用 AngularJS 開發(fā) PC 客戶端說(shuō)起

    摘要:你們說(shuō)能不能就用的開發(fā)模式來(lái)實(shí)現(xiàn)客戶端啊這樣版版版就都有了。有道云筆記可能就是最貼近我們想法的產(chǎn)品,有客戶端,有版。這個(gè)項(xiàng)目由發(fā)起和維護(hù)。 最近一個(gè)多月一直在用 AngularJS 做公司的一個(gè)項(xiàng)目(還沒(méi)有做完),我之前主要是用 PHP 開發(fā)服務(wù)端的,AngularJS 也是現(xiàn)學(xué)現(xiàn)賣,整個(gè)過(guò)程還是比較有意義的,覺(jué)得很有必要寫篇文章記錄一下。 緣起 事情是這樣的……我們團(tuán)隊(duì)的產(chǎn)品是一款 ...

    waltr 評(píng)論0 收藏0
  • 從用 AngularJS 開發(fā) PC 客戶端說(shuō)起

    摘要:你們說(shuō)能不能就用的開發(fā)模式來(lái)實(shí)現(xiàn)客戶端啊這樣版版版就都有了。有道云筆記可能就是最貼近我們想法的產(chǎn)品,有客戶端,有版。這個(gè)項(xiàng)目由發(fā)起和維護(hù)。 最近一個(gè)多月一直在用 AngularJS 做公司的一個(gè)項(xiàng)目(還沒(méi)有做完),我之前主要是用 PHP 開發(fā)服務(wù)端的,AngularJS 也是現(xiàn)學(xué)現(xiàn)賣,整個(gè)過(guò)程還是比較有意義的,覺(jué)得很有必要寫篇文章記錄一下。 緣起 事情是這樣的……我們團(tuán)隊(duì)的產(chǎn)品是一款 ...

    Reducto 評(píng)論0 收藏0
  • Android Studio3.0新特性及安裝詳解

    摘要:許多新的棉絨檢查。如果程序在斷點(diǎn)上暫停,則應(yīng)用程序重新啟動(dòng)。新的中的新型提供了對(duì)應(yīng)用程序活動(dòng)的實(shí)時(shí)統(tǒng)一視圖。要打開,請(qǐng)按照下列步驟操作單擊視圖工具您也可以在工具欄中單擊。從工具欄中選擇要配置的設(shè)備和應(yīng)用程序進(jìn)程。這樣基本上就順利安裝了。 簡(jiǎn)介: Android Studio是Android的官方IDE。它是專為Android而打造,可以加快您的開發(fā)速度,幫助您為每款A(yù)ndroid設(shè)備構(gòu)...

    DDreach 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<