吐槽桃焕,請直接拉到最后查看結(jié)果
苦心學習android快4個月了,現(xiàn)在能夠獨立的完成開發(fā)APP沛婴,給自己一個??,收獲滿滿的督赤。當然需要感覺公司的Android先驅(qū)們留下的遺作嘁灯,加上Ctrl + C 和 Ctrl + V的神作。
今天心情好好的去加班躲舌,想把進度趕趕的丑婿,但是一到公司就提示Android Studio 有更新,果斷的點擊了“Update”,坐等升級羹奉。公司的網(wǎng)絡(luò)真是神了毅贮,秒升級啊。(今天我是第一個到公司尘奏,當奶爸的真不容易啊滩褥,6點起床的,然后就去公司加班了)接著升級了Gradle version到3.3 和 Android Plugin Version到2.3.0炫加,并且升級了下Andriod SDK Build-Tools到25.0.2. 再默默的手動修改了每個Module的依賴瑰煎。在點擊Sync Now后,噩夢就開始了:
Error: Failed to resolve: com.*.lib:router:1.1
第一個反應(yīng)就是升級后導致獲取私有maven庫的文件失敗了:
- 私有庫Maven和android studio 2.3 不兼容
- 私有庫Maven也應(yīng)該升級俗孝,需要對SonyType Nexus進行升級
- 私有庫上的router的jar文件不是最新編譯的酒甸,所以不兼容
- android studio上的Maven插件需要升級
- 。赋铝。插勤。等等腦洞大開的查找
開始baidu,stack overflow革骨,google农尖,android developers, android studio 中文論壇良哲,都沒有找到相關(guān)的內(nèi)容盛卡。
不停的嘗試。
聲明處筑凫,不斷的研究是不是2.3版本后滑沧,進行語法的修改
repositories {
maven {
url "http://nexus.*.com:8081/nexus/content/repositories/Android-Releases"
credentials {
username '*'
password '*'
}
}
}
依賴
compile '*:router:1.1'
并且進行router模塊修改,將router工程更新為最新的android studio 2.3和Gradle version 3.3巍实, Android Plugin Version 2.3.0滓技,Android SDK Build-Tools 25.0.2。再進行上傳棚潦。
compile '*:router:1.2'
修改為1.2版本后令漂,依然是有問題,報了一樣的錯誤
Error: Failed to resolve: com.*.lib:router:1.2
瓦盛。洗显。外潜。 原环。。处窥。 嘱吗。。。
此處省略一百萬字
谒麦。俄讹。。 绕德。患膛。。 耻蛇。踪蹬。。
一天過去了臣咖,回到家又研究了一晚上跃捣,突然發(fā)現(xiàn)一個設(shè)置很有問題,然后進行重試
重點來了
在gradle.properties文件中有兩行鏡像的代理設(shè)置
systemProp.http.nonProxyHosts=mirrors.opencas.cn
systemProp.http.proxyHost=mirrors.neusoft.edu.cn
雖然在android studio 2.2.3版本中夺蛇,沒有出現(xiàn)問題疚漆,那么不能下載maven的原因會不會是因為這個代理呢,在2.3版本中有了一些特殊的處理呢刁赦。
將代理注釋后娶聘,Sync Now點擊后,在沒有報希望的情況下甚脉,Build Success趴荸。
My God!;陆埂发钝!
一切的根源就是這個代理。詢問了那么多波闹,還真的沒有人會想到代理還會這個設(shè)置酝豪。呵呵 (大大的,遠遠的超出我iOS開發(fā)的邏輯)
然后學習了下代理配置
以下配置寫在gradle.properties中:
//以下為http協(xié)議proxy配置
systemProp.http.proxyHost=www.somehost.org //proxy主機
systemProp.http.proxyPort=8080 //proxy端口
systemProp.http.proxyUser=userid //proxy權(quán)限驗證用戶精堕,沒有就刪掉該行
systemProp.http.proxyPassword=password //proxy權(quán)限驗證密碼孵淘,沒有就刪掉
systemProp.http.nonProxyHosts=*.nonproxyrepos.com|localhost //不使用proxy的域名
//以下為https協(xié)議proxy配置,參數(shù)作用同http協(xié)議
systemProp.https.proxyHost=www.somehost.org
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=userid
systemProp.https.proxyPassword=password
systemProp.https.nonProxyHosts=*.nonproxyrepos.com|localhost
// END 高手不要笑歹篓,僅僅是吐槽下