Android导入其它项目慢,Gradel下载失败,另辟蹊径:使用离线gradle加载,附镜像方式

这篇具有很好参考价值的文章主要介绍了Android导入其它项目慢,Gradel下载失败,另辟蹊径:使用离线gradle加载,附镜像方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近在开发中需要测试以前写的小项目。结果忘了换本地的gradle,提示下载失败。换了现在用的gradle,项目能跑了。虽然网上有很多很多教程了,但对我的情况也不是都适用。所以自己记录一下。本人水平有限,有不对的地方请帮我指正,万分感谢。
如果您很着急,请直接看目录挑选重要部分看。

前言

离线导入的方式(没有使用本地gradle或不修改默认仓库位置的前提下)适合本地项目和修改别人的项目。不太推荐含有git并且要推给别人使用,这个推荐用镜像。至于为什么,因为别人和您的路径不同。当您看完本篇文章就知晓了。同时也希望您看完了再开始配置,根据需要选择合适的方式。当您看完以后应该知晓了下载慢或失败的原因,也可举一反三,在充分备份的情况下自行配置。

直接打开的效果

如果打开的项目与自己本地仓库里的gradle版本不一致,哪怕是个小版本号不同都会自动下载该项目的gradle。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
以前是可以直接下载的,只是很慢。随着版本更新,就无法再连接到官方仓库下载了。这里显示连接超时了,有时候会显示下载失败。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle

离线导入

要离线导入,我们要知道gradle在我们项目中的作用。它就是导入依赖的,和Maven类似吧,这是我的理解。那么是导入依赖的工具,必然会有一个存储依赖的本地仓库,不然的话每次下载到项目里,然后每开一个项目就下载一次?这种蠢事可能也只有我以前还觉得是合理的哈哈。

本地仓库

当你下载Androidstudio,配置好了以后,新建一个项目,就必然会有一个当时比较新的gradle下载到了你的本地仓库。而在安装的时候也没见到哪儿设置啊,也没说在哪啊。
这时候你打开你的资源管理器,打开C盘,找到你自己用的账户,进去点开.gradle文件,这就是默认的本地仓库了。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
到这里还是没有看到自己用的gradle在哪。那点击wrapper,里面有一个dists文件夹,再点进去就能看到了带gradle版本的gradle-x.xx-bin(也有可能这个是all)的文件夹。如果好奇,可以再点进去看看,这里不多写了。

没错,本地的仓库是在C盘,如果您不在意,可以不用改,甚至不用看完本篇文章。因为只需要将离线的gradle的压缩包放到dists下面就行了。

更换本地仓库位置(非必要)

本来我的存储空间就很紧张了,更何况是C盘空间呢,果断选择换仓库的位置。
首先在你觉得合理的位置下面新建一个文件夹(前提是整个路径不要有中文,磁盘名字不用担心,这个只看盘符的),其实名字不一定要写成.gradle一样,这是我的仓库新路径D:\Gradle\gradle-repository。然后将原来的仓库内容直接粘贴复制过去,切记不要删除了,否则新仓库配置失败,旧仓库也不能用了就得不偿失了。
接下来就是修改环境变量了。新加一个环境变量,名字为GRADLE_USER_HOME,值为新仓库的路径。有了这个环境变量Android studio才会用新的仓库。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
这时候我们可以重新打开Androidstudio,点击File->settings->Build,Exxxx,Dxxxx->Build Tools->Gradle
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
GradleUserHome位置应该就是现在新仓库的位置了。

使用离线gradle

到现在我们开始正式配置离线gradle内容了。
首先,我们要去下载项目需要使用的gradle。当然,其实完全可以使用已经有的gradle,但毕竟我要记录的是离线加载嘛,所以我将这个方法写在后面。
首先把视图放在project下,侧边栏有个Project,这一栏的最上边一般是显示的Android视图级别,但是在项目进行gradle下载完成或失败之前会一直显示加载,看不到任何内容。所以直接换到project级别下,打开gradle文件夹,下面有一个配置文件gradle-wrapper.properties。里面的内容就是gradle下载的一些信息。

distributionBase:指向仓库地址
distributionPath:相对于distributionBase的解压后的Gradle的路径
zipStoreBase:指向仓库地址,但是这里放的是压缩包文件
zipStorePath:同distributionPath,这也是放的是压缩包文件
distributionUrl:Gradle发行版压缩包的下载地址,如果用离线,改成我们的gradle地址

android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle

这就是项目用的gradle版本,我这个项目以前用的是7.0.2。如果我不改的话,把版本换成现在使用的版本,-bin,也有可能现在用的是-all(很少),如果不一致也要一起改。改完以后还要改gradlePlug版本,这个相当于是插件,和gradle是两个东西,前者是Google的,后者是gradle公司的。这里只是提一嘴。现在主要还是说离线的。

根据版本去找离线包,以前阿里云好像可以下载,现在不知道。这里给一个镜像网址:gradle镜像:https://mirrors.cloud.tencent.com/gradle/
里面有很多版本,我们主要找后缀 版本号-bin.zip的文件。这里我们可以看到7.0有很多版本和不同的命名。

这里浅浅的说一下吧:-rc是属于终版前的一个版本,不是最终版,但是如果-rc版本没有什么大问题,就会成为终版发布上线。软件的话一般还有一个-Bate版本,表示公测版本。-bin是这个已编译文件,能够直接运用在项目中,不需要我们再编译;-all不仅有-bin的所用东西,还有源码文档;-src是源码,不能够直接运行在项目中。当然这个是gradle的,不过大多公司对软件的命名也大差不差的。

android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
下载以后得到一个压缩包。至于放在哪,这个不用直接放在仓库,之前我的仓库还有一个父目录,Gradle的文件夹,放在它的下面。
然后我们回到Androidstudio,打开gradle-wrapper.properties配置文件,修改distributionUrl的值,让他不去网络上的仓库去下载 (这里其实我们已经知道了为什么导入其它项目真正慢是因为无法通过这个地址去下载到我们需要的gradle,那么是不是改为镜像下载地址是不是会好很多呢。答案是肯定的,这里主要是离线的方法,后面会介绍) ,而是通过我们指定的位置去下载解压。我的建议是不要直接去删除,而是屏蔽掉,防止出问题以后没有办法复原。下面是我的配置。

distributionBase=GRADLE_USER_HOME
distributionUrl=file:///D:/Gradle/gradle-7.0.2-bin.zip
#distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
检查无误后,点击同步。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
接着它会去下载其它依赖。到这里基本上就成了。当然,可能会出现一个叫你的主机中的软件中止了一个已建立的连接。 错误,这个一般是端口被占用了,如果是笔记本看下是不是用电脑开了移动热点,关掉就好了,如果是其它程序占用(一般不是),关闭就好了,如果是adb占用,暂时退出就好了。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle

依赖镜像(非必要)

等待依赖下载完成,这个项目就能跑了。如果不想再折腾的就不用看下面的了。

不过有些依赖下载的挺慢的,甚至会失败。对于单个项目,我们可以单独配置一下。如果要全局配置,就需要项目用到自己的本地Gradle环境,这个在下面一节会说。

点开build.gradle。这个是整个项目的。还有一个是在app下面的。如果在Android视图级别下,两个会在同一列表,但是后面会有一个冒号,:app表示app下的,:项目名表示整个项目的。我们要更改的就是整个项目下面的。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
添加镜像地址

mavenLocal()   //配置先从本地仓库寻找jar包,优先寻找上一个配置,找到不执行下面的配置
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
mavenCentral()

为什么多了一个allprojects呢,而且和上面的有相同的结构。buildscript 块只适用于该 Gradle 构建文件中,而 allprojects 块适用于所有项目和模块。可以根据需要添加

android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
这里就配置好了依赖镜像,它会有限去找我们本地的jar包,没有再去镜像找,依次往下。当然jar包也是可以离线导入的,这个比较简单,这里就不介绍了。
附上一个阿里云镜像配置方式

既然依赖可以用镜像,阿里云,腾讯云还有其它镜像网站也有gradle的镜像,打开项目会去找

配置整个Gradle环境并应用在项目中(非必要)

解压我们之前下载的gradle离线包,但是压缩包不要删除!!这时候我们还需要去配置一下环境变量。新建一个名字GRADLE_HOME的变量,值为解压的目录。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
然后点开path,如果条目多的话可以直接双击打开的。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
点击新建,然后输入%GRADLE_HOME%\bin,点击确定,确定,确定。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
这时候我们用命令窗口(WIN+R输入cmd),输入gradle -v。出现正确的版本,和信息表示本地gradle配置成功了。注意这是gradle在本地使用,可以通过命令使用了,而不是说在Androidstudio中能用了。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
这时候我们打开Android studio。点击File->settings->Build,Exxxx,Dxxxx->Build Tools->Gradle->GradleProjects。修改UseGradlefrom,改为Specifiledlocation,让我们自己指定gradle,选择我们已经安装的gradle。然后点击apply或者ok应用。

第一个选项很容易理解,就是从配置文件中选择。

android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
为了演示这里将所有配置还原了,然后删掉了本地仓库的gradle
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
可以看到没有经过配置文件去加载,而是直接运行了。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle

使用已有的gradle和镜像导入

镜像导入

这个比较简单所以放在前面,其主要通过修改distributionUrl来实现。

在前面下载离线gradle的时候用了一个镜像地址,这是腾讯的,将地址改为https://mirrors.cloud.tencent.com/gradle/gradle-x.x.x-x.zip。
常用的是阿里云的镜像:https://mirrors.aliyun.com/gradle/gradle-x.x.x-x.zip

当然无论是阿里云的镜像地址,还是腾讯的,都要保证镜像仓库下有你要的文件(一般都有)。

使用已有的gradle

当我们不想要去下载新的gradle,并且在不影响项目的情况下,我们可以直接用已经有的版本。

首先我们还是要更改distributionUrl的内容,但这次不用修改前面了,网络地址了,而是修改gradle版本号。比如我现有的gradle是8.0-bin,而这个项目用的是7.0.2-bin,那么我直接修改版本号就行了。因为这个版本我们是有的,所以他不会进行下载的。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
到这里看起来好像一切ok。但我们点击File->Project Structure->Project。可以看到,下面GradleVersion是gradle版本,而上面那个gradlePluginVersion则是插件的版本。他们是有对应关系的。当你更换了gradle版本以后,也应该更改插件的版本。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
以我为例,我现在更换了8.0,那么插件版本该是多少呢,这个就要查询官方给的资料了。Android Gradle 插件版本说明 网址:https://developer.android.google.cn/studio/releases/gradle-plugin?hl=zh-cn#updating-gradle
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
可以看到我需要更新到至少8.0的插件版本。官方的资料里面还有一个关于Androistudio版本的限制。这个我并未验证,使用无法进行说明。
android 依赖下载失败,# Android天天踩坑,Android-从零开始的开发之路,android,gradle
当一切完成以后,这个项目按道理说也能跑了。因为Android版本及其对应API级别不同而带来的错误这里就不说了,这个解决很简单的,网上资料也多。

结尾

我也十分犹豫的写下这篇笔记。一来是网上已经有很多大神出了教程,我真的有必要再写一篇吗。二来是自己不过半只脚踏入门的半吊子,真的有资格去写这些吗,说不定还会误导他人。于是在写下第一篇笔记后,就不敢再怎么写了。但是近期问题太多了,有时候一回想,这不就是之前遇到过的吗,虽然记得,但是完全忘了怎么操作(经验不够),还要重新开始搜索资料。效率是比刚开始遇到的时候快,但加在一起还是浪费了很多时间。为了防止踩过的坑再踩一次,我还是鼓起勇气写下了这篇笔记并分享给大家。如果这篇笔记对你有帮助,那就太好了,最后感谢您的观看。文章来源地址https://www.toymoban.com/news/detail-775022.html

到了这里,关于Android导入其它项目慢,Gradel下载失败,另辟蹊径:使用离线gradle加载,附镜像方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android Studio导入项目一直显示正在下载Gradle项目

    如题,问题图类似如下: (此图是解决以后截的,之前遇到问题没截图) 先找到你正在下载的gradle的版本是哪个 然后在链接中 ​​​​​​Gradle Distributions 找到你所对于gradle的版本,下载 对应后缀为bin的文件 例如我的版本是8.0,下载的就是这个文件 然后在电脑找到对应位

    2024年02月03日
    浏览(32)
  • Android Studio导入项目一直在下载gradle

    AS最常见的问题之一就是下载gradle非常慢,还经常出现下载失败的情况,没有gradle就无法build项目,所以一定要先解决gradle的下载问题,下面教大家两种常用方法。 因为我的项目绝大多数使用的是 gradle-5.6.4-all ,下面就以 gradle-5.6.4-all 为例教大家如何解决gradle问题。 1、先停止

    2024年02月11日
    浏览(45)
  • Android Studio导入项目 下载gradle很慢或连接超时

    AS最常见的问题之一就是下载gradle非常慢,还经常出现下载失败的情况,没有gradle就无法build项目,所以一定要先解决gradle的下载问题,下面教大家两种常用方法。 因为我的项目绝大多数使用的是 gradle-5.6.4-all ,下面就以 gradle-5.6.4-all 为例教大家如何解决gradle问题。 1、先停止

    2024年02月04日
    浏览(47)
  • Android下载gradle失败解决方法

    1、在gradle-wrapper.properties文件中查看自己需要下载gradle什么版本的包和zip路径(wrapper/dists)。 2、在setting中查看Gradle的保存路径,如下图:C:/Users/Administrator/.gradle,加上第一步的zip路径得到下载gradle zip包路径即:C:/Users/Administrator/.gradle/wrapper/dists。 3、用下载工具把对应版本

    2024年01月25日
    浏览(39)
  • Android Studio下载gradle失败

    1、打开Android Studio设置Gradle的地方,点击左上角的File-Settings查看gradle存放路径 C:UsersAdministrator.gradlewrapperdistsgradle-5.4.1-all3221gyojl5jsh0helicew7rwx 2、找到正在下载的gradle版本,Android Studio取消下载gradle,然后删掉后缀.part文件以及.lck文件 3、将下载好的gradle文件放在.part相同目

    2024年01月22日
    浏览(43)
  • Android Studio 内gradle配置失败、下载gradle失败简单解决

    腾讯镜像的Gradle 下载之后 找到对应的.gradle文件 将下载文件放到 wrapper/dists/gradle-x.x-bin/xxxxxxxxxx/   下 并解压 会出来一个 gradle-xxx-bin的文件       将文件拿到 xxxxxxxxxx中 回到android studio 重新build gradle      

    2024年02月08日
    浏览(33)
  • HarmonyOS开发:解决DevEco Studio低版本导入高版本项目运行失败问题

    基于 DevEco Studio 4.0 Beta2,hvigorVersion为3.0.2 ,开发了一个项目,上传到了远程仓库,当同事下载后,却始终无法运行,频繁报错,由于API都是使用的9,第一感觉就是开发环境不同,于是,让其发来了他的开发环境, DevEco Studio 3.1.1 Release,hvigorVersion为2.4.2 ,果然是环境不同

    2024年02月05日
    浏览(33)
  • android studio gradle 下载失败解决方案

    报错如上,介绍个绝对成功的办法,看了很多文章居然都没人提到,这里的意思就是这个地址访问失败,所以有两种解决方案,一种是换代理,一种是直接更换下载地址。这里介绍第二种方法,基本都能成功,先去找到下载页面,题主写时可用界面为Gradle Distributions 然后找到

    2024年02月21日
    浏览(39)
  • 前端项目之导入、导出、下载模板

    2024年02月15日
    浏览(30)
  • vue项目下载依赖包失败解决方法

    查看仓库地址npm get registry 查看地址中是否包含依赖包,例如查看依赖vue-pdf 命令  npm view vue-pdf 查看仓库配置 命令  npm config list 更换仓库地址,地址可更换为 私服地址     命令 npm set registry  https://registry.npmmirror.com/      5.单独下载某个依赖包(地址需修改成私服地址)

    2024年02月11日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包