Gradle下載jar包慢到飛起?Github同步一半斷了?Docker下載頻繁報錯?是時候為你的終端統一設置一個代理了。本文以Mac(Unix平台)與HTTP_PROXY為例,講解如何在終端下進行配置代理。
本文章屬於筆記類型,質量遠不如技術類文章,但是網上關於此內容的靠譜信息實在不多,故記錄下來。
首先,要購買挑選一個Proxy,購買前需要注意服務商需要能夠提供Http Proxy
,如下,某良心服務商提供了多種配置方法
Proxy_list
打開終端
open -t ~/.bash_profile
.bash_profile 可以理解為Term打開後能夠自動執行的腳本文件
在文本中添加如下內容
#idea
export JAVA8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home
export JAVA7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
export JAVA_HOME=$JAVA8_HOME
#Android
export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1
export ANDROID_SDK=$ANDROID_HOME
export ANDROID_NDK=/usr/local/Cellar/android-ndk/r10e
#http proxy
HOST=www.xxx.com
PORT=xxxx
#if use lantern, removes comments
# LANTERN=127.0.0.1
# HOST=$LANTERN
# PORT=8787
export http_proxy=http://$HOST:$PORT
export all_proxy=$http_proxy
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export dns_proxy=$http_proxy
export rsync_proxy=$http_proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com,.coding.net,192.168.99.100"
#java(works fine on gradle/mvn/android)
export JAVA_OPTS="-Dhttp.proxyHost=$HOST -Dhttp.proxyPort=$PORT -Dhttps.proxyHost=$HOST -Dhttps.proxyPort=$PORT"
#gradle will use `JAVA_OPTS` as concat
export GRADLE_OPTS="-Dgradle.user.home=$HOME/.gradle"
#maven
export MAVEN_OPTS=$JAVA_OPTS
curl ip.cn
保存配置
source ~/.bash_profile
該方法配置好後,在IDEA等工具的終端下同樣有用
打開終端
git clone --depth=1 https://github.com/Yalantis/StarWars.Android.git
cd StarWars.Android/
./gradlew build --debug
由於目前有高速Proxy,所以下載依賴非常快,等成功後,打開AndroidStudio導入當前現成的項目,就可以復用緩存而不用卡在Building
對話框了
#proxy array
SERVER=(www.xx.com www.xx2.com)
for s in ${SERVER[*]}
do
echo testing $s
rank[$counter]=$(ping -c 4 $s |awk -F '/' 'END {print $5}')
done
min=0
for i in "${!rank[@]}"; do
if [ $(bc <<< "${rank[$min]}>${rank[$i]}") == 1 ];
then
let min=$i
fi
done
echo "best proxy is ${SERVER[$min]}, ping is ${rank[$min]}"
HOST=${SERVER[$min]}
PORT=xxxx
# 進行export