前言
记录一次在开发过程中遇到的问题,周末high完上班第一天,兴致勃勃的打开坑皮U特,按照习惯登上微信、QQ,打开AS,运行的飞速,滋溜项目打开了,好吧,一片红,搞什么灰机,喏,好多酱紫的
请允许我爆粗口,WTF!这个怎么可能没有引入呢,再三确认
有的啊,什么鬼???
哈哈,重启大法…还不行,我是知道这玩意是依赖网络的,但是我之前是下载过的呀,然后去本机.gradle
目录去搜jar包,没有!!!哦哦,想起来了,我清理过缓存,习惯性每周杀毒清理垃圾。那我再同步一下好了…
漫长的等待结束了…
提示:Could not GET xxxx Received status code 500 from server: Internal Privoxy Error
这是什么鬼,怎么还超时了,身为四眼的我敏感的看到了一串IP不太正常127.0.0.1
,这玩意啥时候冒出的,当然同步不下来,于是乎我查看代理设置:
老铁,没毛病啊!!!代理我关了啊,于是乎我全局搜
我滴乖乖,在这!!!我承认我确实翻过墙更新maven仓库,但是我关闭之后,将AS的代理关闭了呀,这里怎么不会自动删除,bug???
然后手动删除,同步–> OK了。
还有一种可能也是最近遇到的(2019-04-01),情况是这样的,也同样是编译不成功
但是网页却能够打开,这种情况肯定是AS配置了代理,但是找了一个遍还是没有,编辑器HTTP Proxy没有设置,项目中gradle.properties
文件也没有残留Proxy设置,后来却在.gradle
文件夹下找到了相关的配置,真是糟心:
然后删除这个文件就可以了,我估摸着这个文件是设置电脑的全局代理时编辑器自动生成的。
当然这不是重点,重点是下面总结,以后遇到这类maven仓库的问题您的排查方向如下:
level1
人人都说重启大法好
关闭编辑器 - 重新打开
关闭电脑 - 重新打开
level2
注释掉对应的依赖 - 同步 - 重新引用依赖 - 同步
level3
引用依赖错误太多,重新同步所有依赖
level4
如果出现超时警告,查看AS代理配置
需要注意的是,以前如果你使用过代理的话,最好去当前项目工作空间下查看gradle.properties
配置是否正确
level5
有些依赖确实需要翻墙才能下载,不过国内阿里云maven仓库包含了常用的大量maven库,值得使用,对于编译速度是个质的飞跃,优先采用国内阿里云的仓库(这真不是广告,况且也不需要广告)
repositories {
maven {
url 'http://maven.aliyun.com/nexus/content/groups/public/'
}
jcenter()
google()
}