多個專案多個 Gradle,如何一手管理

承香墨影發表於2017-07-16

版權宣告:

本賬號釋出文章均來自公眾號,承香墨影(cxmyDev),版權歸承香墨影所有。

未經允許,不得轉載。

一、前言

在 Android 專案構建中 ,Gradle 是被推薦使用的,而不同版本的環境下,是需要對應的 Gradle 版本來支援的。這就導致了,如果同時維護多個專案,除非保持多個專案同步升級,否則只安裝一個 Gradle 的版本,是無法滿足需求的。

這個時候就需要利用一些 SDK 管理工具來幫我們管理這些 SDK 的版本了,這裡根據 Gradle 的官方文件推薦,可以使用 SDKMAN 來管理 Gradle 的多個版本。

SDKMAN 是在基於類 Unix 的系統上,管理多個 SDK 的並行版本的工具。所以暫時只支援 Mac OSX、Linux,如果在 Windows 下也想使用,就需要藉助 Cygwin 、PowerShwll 之類的環境了,或者直接使用官方推薦的 Scoop 根據來管理 SDK。

下面就在 Mac OSX 下,使用 SDKMAN 來管理多個 Gradle 的版本,做一個簡單的介紹,當然 SDKMAN 不僅僅只能用於管理 Gradle ,這裡只是使用 Gradle 來做個例子介紹。

二、SDKman

1、什麼是 SDKMAN

SDKMAN 的全拼是 (The Software Development Kit Manager),從名稱上就可以看出來,它是一個用於管理 SDK 的工具。它提供了方便的命令列根據(CLI)和 API,用於安裝、切換、刪除、列出候選SDK 版本、指定SDK 版本等操作。

SDKMAN 的安裝非常的簡單,只需要按照文件使用 curl 下載,然後將其加入環境變數即可,這裡就不介紹如何安裝 SDKMAN 了。直接常見官方文件安裝即可。

SDKMAN 安裝文件地址:sdkman.io/install.htm…

安裝完成之後,通過 sdk version 命令,即可檢查當前是否安裝以及安裝的版本。

可以看到,這裡安裝的是 5.5.4。

2、如何使用 SDKMAN

1、檢視幫助文件

開始使用一個新的東西,檢視一下幫助文件總是沒有錯的。

在 SDKMAN 中,提供了 sdk help 命令,用於檢視幫助文件。


從幫助文件中可以瞭解到,SDKMAN 的命令其實非常的簡單,只有必要的命令。

2、安裝指定版本的 Gradle

安裝好 SDKMAN 之後,就可以通過 SDKMAN 來管理我們的 Gradle 了。如果需要安裝新的 Gradle 版本,可以通過 install 命令進行安裝 ,當然,作為 SDK 管理根據,這裡的安裝是需要指定版本號的。

命令:sdk install gradle 3.4

例如這裡就是去安裝 3.4 版本的 Gradle ,具體如下圖,如果網路不好的情況下,可能會出現下載過慢的問題。


下載完成之後,會詢問是否將剛才下載的版本,作為一個預設版本,如果指定的話,當前預設版本就是剛才下載的版本,這裡是 3.4。

3、檢視當前安裝的 Gradle 版本

如果當前已經通過 SDKMAN 安裝了多個 Gradle 之後,想檢視這些已經安裝的 Gradle 了。

命令: sdk list gradle


可以看出,使用 sdk list 命令,可以查出當前所有支援的 Gradle 版本號,版本號之前標記 * 的,說明是已經安裝的 Gradle 版本,被 > 標記的,表示當前指定的 Gradle 版本。

4、移除已安裝的 Gradle

當安裝的 SDK 版本已經不再使用了,就可以選擇將它解除安裝掉,當然,解除安裝 SDK 需要指定解除安裝的版本號。

命令:sdk uninstall gradle 3.4

5、設定預設的 Gradle 版本

雖然在安裝新的 Gradle SDK 版本的時候,需要選擇是否設定為預設版本,如果選擇 Y ,則預設使用最新下載的 SDK 版本作為支援。單設定完成之後,如果需要修改,可以使用 sdk default 命令進行修改。

命令:sdk default gradle 3.3

6、使用臨時的 Gradle 版本

有時候,我們並不是需要設定一個長期的 SDK 版本,只是臨時使用一下,使用命令 sdk use 來指定一個臨時的 SDK 版本。只在當前的 shell 視窗中,才會使用臨時指定的 SDK 版本。

命令:sdk use gradle 3.4

7、檢視當前使用的 Gradle 版本

如果需要檢視當前指定的 Gradle 版本,除了使用 sdk list gradle 命令檢視之外,還可以使用 sdk current 命令來檢視。

命令:sdk current gradle

三、修改 AS 的配置

在使用 SDKMAN 指定了使用的 Gradle 版本之後,如果發現 Android Studio 中使用的依然是舊版本的 Gradle 版本,就需要檢查一下是否是在 Android Studio 中指定了使用的 Gradle 版本。

進入 Preferences 視窗,找到 Gradle 選項。


需要指定 "Use default gradle wrapper" 才可以,設定完成之後,如果依然失敗,可以嘗試重啟一下 Android Studio 。

三、結語

使用 SDKMAN 管理各種 SDK 的版本真的很方便,而且這些命令都有對應的縮寫,更多使用細節,可以去官方查閱文件。

SDKMAN 官方地址: sdkman.io/

覺得不錯,記得點個贊再走。

公眾號二維碼.jpg
公眾號二維碼.jpg

相關文章