解決Unknown host 'd29vzk4ow07wi7.cloudfront.net'. You may need to adjust the proxy settings in Gradle.
前言:前幾天在匯入一個從github上下載的專案的時候,報了這個錯誤“Unknown host 'd29vzk4ow07wi7.cloudfront.net'. You may need to adjust the proxy settings in Gradle.”,當時網上沒有關於這個問題相關的解決方案,翻牆谷歌查詢的結果也少的可憐。後來發現執行自己專案的時候也會出現這個問題,當時感覺問題大發了,因為之前自己的專案都是沒問題的,再後來這個建立新的專案也出現了這個問題。 這個問題整了了2天也沒解決,就想暫時放一放。果然週一到公司以後發現陸續出現了網友們相關的幾個帖子:
下面提供網上目前出現的三種解決辦法:
這些都可以百度到,逐一嘗試了一下,還是沒有解決。
通過錯誤提示可以知道是“d29vzk4ow07wi7.cloudfront.net”這個地址無法訪問。猜想是被牆了,之前也嘗試開啟翻牆軟體,但是發現沒有作用,仍然報這個錯誤。所以當時就忽略了因為被牆導致錯誤的這個可能性。
今天早上,在百度上搜了一下這個錯誤,仍然沒有找到好的解決辦法,只能靠自己啦,不然沒法幹活啊。。。。
想了想還是要從“被牆”這裡找突破口,突然想到會不會是因為,我的AS並沒有翻牆成功呢,因為我之前開啟翻牆軟體後,只是嘗試打了一下google看看能不能開啟來判斷有沒有翻牆成功,並沒有確定AS翻牆成功。百度了一下,果然發現AS並沒有翻牆出去,So問題就有眉目了。
我用的是免費的lantern,之前開啟以後就能翻牆,網上一查發現AS用的話還需要設定一下代理。具體方法如下:
1.開啟lantern,瀏覽器已經可以翻牆了,但是as還不行,需要設定“代理全部流量”。
2.開啟As,File—>Settings—>HTTP Proxy—>Manual proxy configuration
選擇HTTP,host name填127.0.0.1,Port number 填之前你lantern上的埠號。
可以點選“check connection” 測試一下是否翻牆成功。
翻牆成功。
然後見證奇蹟的時刻,點選gradle編譯發現編譯成功。
最後,這個問題的原因我猜測是jcenter倉庫被牆了,所以專案在下載第三方庫的時候找不到地址。相同的程式碼我同事可以執行,我這無法執行,估計是因為它的第三方庫已經下載到本地,設定了offline模式後,不用再次訪問jcenter就能編譯成功。我的程式碼可能不知道什麼時候把本地第三方庫的快取刪掉了,當從jcenter下載的時候報錯。
最後:
第一次遇到問題那麼無助,萬能的百度也找不到答案。困擾了那麼長時間,感觸頗深,其實這個問題剛出來的時候,as就在這個問題的下面提供瞭解決辦法的連結,點選連結過去是設定代理的相關方法,當時只是深入考慮這種情況的可能性,因為我的程式碼前一天還是能執行的,相同的程式碼我同事也能執行,在解決過程中,我還嘗試過重灌系統,重灌jdk,重灌as,重新設定sdk,重新下程式碼,我擦,我是多麼絕望才會重新裝系統啊。。。。。
自己的技術還是有待提高,對許多東西瞭解的不深,繼續努力。
希望我的文章可以幫到你。