我的init.gradle 第一项配置的mavenLocal() ,第二项是阿里,第三项没有配置境外网址。有一个老版本号的组件( idea版本早,内置的gradle版本低,所以相关的组件,默认也低 ),一直拉取不到。
解决:
(1)先去本地maven 仓库找,组件的这个版本号下面,有一个.lock文件,证明gradle来这里拉取,但是没有。
(2)我打开一个存在的maven项目,添加这个老版本号的依赖,也是飘红拉取不到。换个新版本号,就能拉取到本地仓库。
(3)我到阿里仓库的网页上搜索,这个组件只有其他版本号,确实没有这个号。
(4)我到华为仓库搜索这个组件,发现版本号比较全。所以在我的settings文件中,增加一个mirror ,引用 https://developer.huawei.com/repo
(5)回到idea里,点右边窗口里那个刷新按钮,拉取不到。这很奇怪!于是我命令行进入该idea项目根,mvn clean compile ,就可以看到到华为下载该组件成功到本地仓库。
(6)再回到idea里,点刷新按钮,依赖的版本号不再飘红。(看来idea还不如命令行智能 ?)。然后右边maven窗口里的dependencies下面该组件,仍然有波浪线。重启idea后,波浪线消失。
(7)其实不用mavenLocal()的话,直接在init.gradle里添加第三项 maven {url 'https://developer.huawei.com/repo/' } 也可以。