前言
Android Studio 從1.0一直用到了4.2.2速妖,遇到了數(shù)不清的坑高蜂。講道理,作為一個(gè)編譯工具罕容,總會(huì)出現(xiàn)各種各樣的編譯問(wèn)題备恤,有時(shí)候甚至都不知道哪出了問(wèn)題稿饰,而工具的緩存目錄又分好幾個(gè),真讓人蛋疼烘跺。
大殺器
最近升級(jí)了kotlin的1.4.10版本湘纵,結(jié)果導(dǎo)致整個(gè)項(xiàng)目的Kotlin代碼都爆紅了,究其原因是發(fā)現(xiàn)kotlin-stdlib的某些類不見了滤淳,編譯器爆紅梧喷,編譯沒(méi)問(wèn)題,運(yùn)行也沒(méi)問(wèn)題脖咐。初步判斷應(yīng)該是緩存問(wèn)題铺敌,clean后運(yùn)行發(fā)現(xiàn)沒(méi)效果,invalidate Caches后屁擅,也沒(méi)效果偿凭,刪.idea文件夾,重啟后也不行派歌。然后找到kotlin的lib弯囊,發(fā)現(xiàn)lib里是有類的,就是編譯器里沒(méi)有胶果,那就只能祭出大殺器匾嘱,專治AS各種疑難雜癥,找到C:\user\admin\AppData\Local\Googloe
早抠,把Android Studio4.2文件刪了或者改個(gè)名字霎烙,重啟,解決問(wèn)題蕊连。注意悬垃,在C:\user\admin\AppData\Roaming
也有一個(gè)Google,這里面主要是一些配置甘苍,不是緩存位置尝蠕,刪這個(gè)沒(méi)用,刪Local下的载庭,解決所有的編譯問(wèn)題趟佃。
補(bǔ)充
前幾天遇到一個(gè)非常難受的問(wèn)題,AS卡在build model很久昧捷,我也知道有些庫(kù)是拉不下來(lái)闲昭,也科學(xué)上網(wǎng)了,重復(fù)刪緩存好幾次靡挥,依然卡著序矩,每次都要卡最少兩分鐘。當(dāng)然設(shè)置離線模式是可以的跋破,不過(guò)這治標(biāo)不治本簸淀,作為一個(gè)有潔癖的人來(lái)說(shuō)瓶蝴,我必須得找到問(wèn)題,到底是哪個(gè)庫(kù)拉不下來(lái)租幕。
經(jīng)過(guò)很多的排查(過(guò)程不再贅述)舷手,最終定位到是flutter的某些pom下載不下來(lái),后續(xù)也進(jìn)行許多的廠商劲绪,科學(xué)上網(wǎng)男窟,更換maven庫(kù),等等操作最后還是卡在那贾富。但編譯能過(guò)歉眷,能運(yùn)行。甚至一度想過(guò)要把flutter的module打包成遠(yuǎn)程maven颤枪。
但把這個(gè)flutter的module引入到一個(gè)demo中汗捡,確能很快的編譯。再次確定問(wèn)題還是在app的某些配置有問(wèn)題畏纲。下載不下來(lái)庫(kù)扇住,首先考慮的就是maven庫(kù)有問(wèn)題桨仿,再后續(xù)又排查了一堆的庫(kù)搜变,終于定位到一個(gè)bintray
maven,發(fā)現(xiàn)這個(gè)maven已經(jīng)關(guān)閉了譬重,遷移到mavenCenter了读整,最終找個(gè)庫(kù)刪掉,終于不再卡編譯了咱娶。