1.homebrew安裝軟件的大概原理:
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core目錄是一個git倉庫。brew安裝軟件時會在此目錄下的Formula尋找對應軟件的rb文件,該文件中有下載此軟件的地址。
以安裝gradle爲例。打開Formula下的gradle.rb文件,有一行是 url "https://services.gradle.org/distributions/gradle-4.10-2l.zip",這就是gradle的下載地址。我們如果想下載舊版本的gradle,則必須將這個rb文件修改成舊版本對應的rb文件。那麼如何獲得舊版本的rb文件呢。
2.獲取舊版本軟件的rb文件
由於我本地的homebrew工具已經更換成了中科大的鏡像源,所以無法在本地的/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core倉庫中找到老版本rb文件。所以我將https://github.com/Homebrew/homebrew-core克隆下來了。終端進入該倉庫的根目錄,輸入git log ./Formual/gradle.rb查看軟件的提交歷史,找到你所需要的版本的commitId,執行git checkout commitId(舊版本的commitId)來切換到舊版本的分支。然後在Formula目錄下找到gradl.rb文件,打開這個文件會發現url對應的gradle版本已經是你所需要的版本了。將這個rb文件複製到你本地的/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula目錄中。再執行brew install gradle即可下載你所需要的版本的軟件。若出現
Error: gradle 4.10.2 is already installed
To install 4.1, first run `brew unlink gradle`
則執行一下brew unlink gradle命令後再執行安裝命令即可。