Gradle環境搭建,與Gradlew區別


最近,換了新項目,用起了Gradle。

先說一下Gradle,Gradle是一個基於Apache Ant和Apache Maven概念的項目自動化構建開源工具。它使用一種基於Groovy的特定領域語言(DSL)來聲明項目設置,目前也增加了基於Kotlin語言的kotlin-based DSL,拋棄了基於XML的各種繁瑣配置。

面向Java應用為主。當前其支持的語言限於Java、Groovy、Kotlin和Scala,計划未來將支持更多的語言。通俗的說,Gradle就是打包用的。

可能有人說,那為什么要用Gradle打包呢,首先,打包的時候可能要修改一些東西,比如說配置文件中的一些賬號和密碼,你本地開發和正式環境運行時的內容肯定不一致,所以需要有兩個文件,開發的時候用一個,正式環境的時候用一個。這樣每次打包的時候都要重復的做這些事,每次打包都需要注意這些東西。Gradle可以把這些東西寫成腳本自動運行,這是其一。其次,當我們搭建環境的時候,要用很多jar包,很多jar包之間都有依賴,為了方便引用並下載jar包,就可以用Gradle來配置了。其第一個功能類似Ant,第二個功能類似Maven,

Gradle可以完美的結合這兩個功能,即進行了配置,也完美的進行jar包的下載。

接下來,我們來說說配置環境。

搭建Gradle環境的步驟如下:

1)進入Gradle官網https://gradle.org/下載軟件包。

2)解壓到指定目錄即完成安裝。

3)添加新環境變量GRADLE_HOME,值為你的安裝目錄,並為環境變量Path添加一項%GRADLE_HOME%\bin。

4)命令行下運行gradle -version,檢查安裝和配置是否成功。

如此簡單,環境搭建完成。

再說一下gradlew,我們在新建項目目錄下使用cmd輸入gradle wrapper。

在目錄下可以發現出現gradle新建的文件,其中gradlew.bat文件,就是windows上的可執行文件(但是不要雙擊哈,使用cmd中 gradlew命令執行)

那gradlew和gradle有什么區別呢?

gradle的版本會不斷的更新,大家開發的時候經常會遇到版本不一致,而gradlew可以算是在gradle外面加了一層包裝,當我們執行在上面執行gradle wrapper的時候,可以看到gradle-wrapper.properties文件中已經記錄了我們當前使用gradle的版本信息。這時候我們執行gradlew命令的時候,會根據配置信息來使用對應版本的gradle來進行構建,不一致則會下載。這樣可以保持gradle版本一致。

最后,介紹一些gradlew的命令。

gradlew -v 查看當前gradle,groovy,ant,jvm,os等版本信息

gradlew build 檢查依賴並編譯打包

gradlew build --info 編譯並打印日志信息

gradlew build --xtest 編譯並不運行測試文件

gradlew clean 清理工程目錄下build文件夾

gradlew tasks --all 查看所有任務

gradlew clean build --refresh -dependencies 強制更新最新依賴,清楚並構建

gradlew build --info --debug --stacktrace 調試模式並打印堆棧信息

gradlew assembleDebug 編譯並打Debug包(可用於開發環境)

gradlew assembleRelease 編譯並打Release包(可用於正式環境)

gradlew installRelease Release模式打包並安裝

gradlew uninstallRelease 卸載Release模式包

gradlew dependencies 依賴信息查看

gradlew dependencies --info 查看詳細的依賴信息

大概以上這些,歡迎補充。

PS:當依賴一個很大的第三方庫,出現某個庫錯誤的時候,又不知道是哪里的問題,可以用gradlew build --info --debug --stacktrace命令打印並排查堆棧信息。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM