在IDEA里gradle配置和使用的方法步驟
前言
有人說Gradle使用groovy語言編寫,簡單,明了沒像maven使用xml臃腫,其實(shí)我倒不覺得,我覺得maven挺好的,管理jar依賴和項(xiàng)目生命周期挺方便的,我使用gradle只是因?yàn)楣居茫蝗晃夜烙?jì)不會(huì)學(xué)習(xí)gradle。下面是gradle的優(yōu)點(diǎn),自己斟酌吧。 1. 按約定聲明構(gòu)建和建設(shè); 2. 強(qiáng)大的支持多工程的構(gòu)建; 3. 強(qiáng)大的依賴管理(基于Apache Ivy),提供最大的便利去構(gòu)建工程; 4. 全力支持已有的 Maven 或者Ivy倉庫基礎(chǔ)建設(shè); 5. 支持傳遞性依賴管理,在不需要遠(yuǎn)程倉庫和pom.xml和ivy配置文件的前提下; 6. 基于groovy腳本構(gòu)建,其build腳本使用groovy語言編寫; 7. 具有廣泛的領(lǐng)域模型支持構(gòu)建; 8. 深度 API; 9. 易遷移; 10. 自由和開放源碼,Gradle是一個(gè)開源項(xiàng)目,基于 ASL 許可。
Windows環(huán)境IDEA配置
gradle配置系統(tǒng)環(huán)境變量
為了使用gradle命令,idea里使用不了命令。比如編譯命令gradle build
下載
gradle安裝包下載地址,解壓到“D:softgradlegradle-4.8”
配置環(huán)境變量
打開環(huán)境配置,新建系統(tǒng)環(huán)境“GRADLE_HOME”,值為D:softgradlegradle-4.8,找到path變量,后面添加%GRADLE_HOME%bin;。
測試
在cmd命令里輸入gradle -v如果能打出版本號(hào),說明環(huán)境配置完畢。
idea配置
在D盤新建文件.gradle(使用dos命令mkdir .gradle ),做為gradle下載的jar包倉庫主目錄,默認(rèn)在C:UsersAdministrator.gradle.
打開file->setting->Build,Execution,Deployment->Gradle,修改如下:
Gradle home指定了gradle文件目錄
Service directory path指定了gradle工作主目錄
gradle倉庫設(shè)置
建議如下設(shè)置
repositories { mavenLocal() maven { url 'http://maven.aliyun.com/nexus/content/groups/public/'} mavenCentral() jcenter() maven { url 'https://repo.spring.io/snapshot' } maven { url 'https://repo.spring.io/milestone' } maven { url ’http://oss.jfrog.org/artifactory/oss-snapshot-local/’ } //轉(zhuǎn)換pdf使用}
存儲(chǔ)庫只是文件的集合,按分組,名稱和版本來組織構(gòu)造。 默認(rèn)情況下,Gradle不定義任何存儲(chǔ)庫。 這里使用repositories 指定存儲(chǔ)庫。
mavenLocal():指定使用maven本地倉庫,而本地倉庫在配置maven時(shí)setting文件指定的倉庫位置。如<localRepository>D:/repository</localRepository>,同時(shí)將setting文件拷貝到C:UsersAdministrator.m2目錄下,一般該目錄下是沒有setting文件的,gradle查找jar包順序如下:gradle默認(rèn)會(huì)按以下順序去查找本地的倉庫:USER_HOME/.m2/settings.xml >> M2_HOME/conf/settings.xml >> USER_HOME/.m2/repository。
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/'}:指定阿里云鏡像加速地址 mavenCentral():這是Maven的中央倉庫,無需配置,直接聲明就可以使用
jcenter():JCenter中央倉庫,實(shí)際也是是用的maven搭建的,但相比Maven倉庫更友好,通過CDN分發(fā),并且支持https訪問。 后面的maven { url 地址},指定maven倉庫,一般用私有倉庫地址或其它的第三方庫
gradle按配置順序?qū)ふ襧ar文件。如果本地存在就不會(huì)再去下載。不存在的再去maven倉庫下載,這里注意下載下來的jar文件不在maven倉庫里,而是在gradle的主工作目錄下,如上面的D:.gradle目錄 參考《Gradle實(shí)戰(zhàn)》如何配置利用Maven本地倉庫
構(gòu)建命令
清理命令
gradle clean
構(gòu)建打包命令
gradle clean build
編譯時(shí)跳過測試,使用-x,-x參數(shù)用來排除不需要執(zhí)行的任務(wù)
gradle clean build -x test
創(chuàng)建緩存依賴
執(zhí)行命令gradle clean build --refresh-dependencies或刪除.gradle/caches目錄,構(gòu)建的時(shí)候它會(huì)下載所有依賴并加入到緩存中。
阿里云鏡像
buildscript { repositories { maven { url ’http://maven.aliyun.com/nexus/content/groups/public/’ } maven{ url ’http://maven.aliyun.com/nexus/content/repositories/jcenter’} }
參考gradle配置國內(nèi)鏡像gradle.build構(gòu)建腳本
build.gradle是Gradle默認(rèn)的構(gòu)建腳本文件,執(zhí)行Gradle命令的時(shí)候,會(huì)默認(rèn)加載當(dāng)前目錄下的build.gradle腳本文件。 gradle.build腳本如下:
buildScript { repositories { mavenCentral() }}repositories { mavenCentral()}
buildScript里的repositories是這個(gè)腳本需要的依賴庫,與項(xiàng)目無關(guān),在執(zhí)行腳本時(shí),會(huì)從這個(gè)庫里download對應(yīng)的jar和插件。第二個(gè)repositories是項(xiàng)目里需要依賴的jar的庫。
查看項(xiàng)目已定義的所有task以及含義
命令
gradle tasks
比如結(jié)果如下
assemble: 編譯 build:編譯并執(zhí)行測試 clean:刪除build目錄 jar: 生成jar包 test:執(zhí)行單元測試maven項(xiàng)目轉(zhuǎn)換為gradle項(xiàng)目
根目錄執(zhí)行
gradle init --type pom
上面的命令會(huì)根據(jù)pom文件自動(dòng)生成gradle項(xiàng)目所需的文件和配置,然后以gradle項(xiàng)目重新導(dǎo)入即可。
settings.gradle配置
是模塊Module配置文件,大多數(shù)setting.gradle的作用是為了配置子工程,根目錄下的settings.gradle腳本文件是針對module的全局配置,它的作用域所包含的所有module是通過settings.gradle來配置。 settings.gradle用于創(chuàng)建多Project的Gradle項(xiàng)目。Project在IDEA里對應(yīng)Module模塊。 例如配置module名rootProject.name = ’DyoonPLM’
參考Gradle 入門?只此一篇 參考你真的了解 Gradle 嗎?
到此這篇關(guān)于在IDEA里gradle配置和使用的方法步驟的文章就介紹到這了,更多相關(guān)IDEA里gradle配置使用內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. IntelliJ IDEA創(chuàng)建web項(xiàng)目的方法2. Python趣味挑戰(zhàn)之turtle庫繪畫飄落的銀杏樹3. Python寫捕魚達(dá)人的游戲?qū)崿F(xiàn)4. Python Request類源碼實(shí)現(xiàn)方法及原理解析5. python實(shí)現(xiàn)與redis交互操作詳解6. python基礎(chǔ)之匿名函數(shù)詳解7. python numpy中setdiff1d的用法說明8. HTTP協(xié)議常用的請求頭和響應(yīng)頭響應(yīng)詳解說明(學(xué)習(xí))9. python中的bool數(shù)組取反案例10. Python多線程實(shí)現(xiàn)支付模擬請求過程解析
