Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 591|回复: 0

android studio的 gradle 依赖同步错误解决方法

[复制链接]
  • TA的每日心情
    奋斗
    2024-4-6 11:05
  • 签到天数: 748 天

    [LV.9]以坛为家II

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    705612
    发表于 2021-9-2 15:21:48 | 显示全部楼层 |阅读模式

      android studio 和eclipse都比较臃肿,bug一堆,个人都不喜欢用。但谷歌官方指定as(android studio)我也就开始了as上的开发。我一直被依赖问题整的si去活来,今天在编译 https://github.com/4455jkjh/Apktool-android,一个安卓上的比较强大的反bian译软件,我的as是最新版,变易又遇见了在这个问题,在此记录一下排错技巧。本人不是专业安卓程序员,难免描述出错,不对或不妥的地方请大佬在评论区批评指正。

      要想理解该文就要简单说说as是如何导入并编译一个软件的app出来的,首先是导入在github下载的文件根目录项目,导入后as会自动的用gradle同步该项目依赖等等环境问题,这一步其实就是在依据配置文件自动还原出作者在开发时所用到的环境。有时不会自动开启,需要手动同步一下。是不是在同步看左下角有个进度条,点击进度条查看详情,没有就是没有自动同步。在同步完成后会有提示成功同步。之后就是编译apk阶段,注意如果没有同步成功是不会出现编译apk的按钮的,这点很重要

      编译时发生的依赖报错有两种可能,一种是网络问题,这个也是主要原因。身处郭内,有一我称之为柏林墙的东西。只要你想出郭访问外。面的世界,就要接受检差,这一点我可以理解,不理解的是为什么一个纯技术类的网站,也要该动作。总而言之,这个东东会jie断你正常的访问连接,或者故意拖延你的访问链接造成网络超时,致使你无。法·正·常·上·网,可能还有其他手段,我不得而知。要想突破柏林,就要给电脑设置带·里,传统的方法是npv技术,还有目前最流行的s5r技术,我之前介绍过,设置起来比较方便。s5r的接点用百毒,谷鸽都可以瘦到。今天我讲的是as如何突破柏林,首先确保s5r软件使用正常,接点高速稳定。然后在s5r软件设置里有个允许本地袋里打开,端口选择默认即可。接下来打开as的全局设置,file-》setting,找 界面与行为 下的 系统设置 下的 http ,选中手动配置,选http,地址填入127.0.0.1,端口1080,点击应用和确定。然后在该设置界面下有个按钮叫 检茶链接,填入一个被诅咒的链接,测试显示通过就说明成功了。第二种是因为依赖太旧或者源太旧。一个程序看似依赖一个库但这个库就有可能依赖一堆东西,我这个app就依赖classpath 'com.android.tools.build:gradle:1.+',意思是gradle的1.x版本过于陈旧且使用的源是jcentral()这个源里的gradle也太旧找不到我要的gradle。所以打算离线下载个gradle的最新版本,注意为什么要离线的方式下载,因为柏林太meng,及时有s软件也无法下载该软件,必须这样做,下载安装好后让该app依赖这个版本。在把原来的旧且不稳定的源改为国内阿里源。这里要修改两个文件,我是这样配置的:

     build.gradle文件,修改的方法如下,你可以照着我的修改,但无需一模一样:

    // Top-level build file where you can add configuration options common to all sub-projects/modules.

    buildscript {
    repositories {
    //jcenter()
    maven { url 'https://maven.aliyun.com/repository/public/' }
    maven { url 'https://maven.aliyun.com/repository/jcenter/'}
    maven { url 'https://maven.aliyun.com/repository/google/'}
    mavenLocal()
    mavenCentral()
    google()
    }
    dependencies {
    classpath 'com.android.tools.build:gradle:3.5.3'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    }
    }

    allprojects {
    repositories {
    //jcenter()
    maven { url 'https://maven.aliyun.com/repository/public/' }
    maven { url 'https://maven.aliyun.com/repository/jcenter/'}
    maven { url 'https://maven.aliyun.com/repository/google/'}
    mavenLocal()
    mavenCentral()
    }
    }



    在gradle-wapper.properties修改成最新的gradle
    distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

      这两个文件修改好后就可以重建依赖关系了,在 文件 -》用gradle同步项目选项  点击它就开始自动同步了。我这个app这两个问题都遇到了,照做同步完成后就解决了。还有这个同步只是在第一次是非常慢,在同步成功的情况下第二次打开就会非常快。

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-4-29 18:10 , Processed in 0.066540 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表