Android Studio 打包App问题

一、场景

windows 电脑C 盘空间越来越少,所有软件默认位置都往C盘用户目录写入数据,于是开始准备整理,Android Studio 相关的 .android 和 .gradle 目录成为了目标。

二、问题出现

1、将C盘的.gradle 目录拷贝到D盘,文件比较大,拷贝了很久,其中还有一些文件无法操作跳过处理的。

2、设置Android stuido gradle 目录到D 盘对应目录

3、编译App 代码,报错如下:

Could not resolve all files for configuration ':app:NormalAppDebugRuntimeClasspath'. > Could not find com.lzy.net:okgo:3.0.4. Required by: project :app > Could not find org.eclipse.paho:mqtt-client:0.4.0. Required by: project :app

但是找到对应的gradle目录,发现之前已经拷贝过来了:

但是仍然报这个错误,有点莫名其妙,怀疑是不是拷贝过来还有其他文件丢失损坏导致找不到这个三方库依赖。

三、解决尝试

1、重新拷贝一份代码,将原先C盘的.android .gralde 重命名,然后让Android studio 重新运行生成新的目录,打包编译还是不行。首先发现的是gradle 下载速度奇慢,后来参考解决gradle下载慢的问题-阿里云开发者社区

更换了腾讯的镜像源:

下载gradle 就很快了, 然后再看.gradle 目录下,确实没有下载到okgo 这个依赖包, 然后将原先D盘中拷贝过来,也还是识别不到,仍然编译不过。

2、怀疑是不是这个库在几个源里面下载不到了

复制代码
google()
jcenter()
mavenCentral()

jcenter 里面确实没找到, mavenCentral 的网页里面 Maven Central 找到的包名对不上。

然后重新添加了阿里的镜像源

复制代码
maven {
    url 'https://maven.aliyun.com/repository/public/'
}
maven {
    url 'https://maven.aliyun.com/repository/central'
}

居然就成功获取下来了仓库服务

后面咨询了一下AI , 也建议将小的不更新的库放到本地打包,所以这些jar aar 还是放到libs 下管理,不知道什么时候又可能拉取不到了。

【但是将库文件放到本地,只适合简单的没有其他依赖拉取的小文件,这个okgo应该还有其他依赖,如果放到本地打包会报如下错误:】

02-12 13:59:38.267 16706 18109 E AndroidRuntime: FATAL EXCEPTION: OkHttp Dispatcher

02-12 13:59:38.267 16706 18109 E AndroidRuntime: Process: com.org.BaseWebviewApp, PID: 16706

02-12 13:59:38.267 16706 18109 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/internal/http/HttpHeaders;

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at com.lzy.okgo.interceptor.HttpLoggingInterceptor.logForResponse(HttpLoggingInterceptor.java:166)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at com.lzy.okgo.interceptor.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:101)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at okhttp3.RealCall$ApplicationInterceptorChain.proceed(RealCall.java:190)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:163)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at okhttp3.RealCall.access$100(RealCall.java:30)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at okhttp3.RealCall$AsyncCall.execute(RealCall.java:127)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: at java.lang.Thread.run(Thread.java:932)

02-12 13:59:38.267 16706 18109 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "okhttp3.internal.http.HttpHeaders" on path: DexPathList\[zip file "/data/app/com.org.BaseWebviewApp-x9N_Ov65Y47KeF4Y4EvTHA==/base.apk",nativeLibraryDirectories=/data/app/com.org.BaseWebviewApp-x9N_Ov65Y47KeF4Y4EvTHA==/lib/arm64, /data/app/com.org.BaseWebviewApp-x9N_Ov65Y47KeF4Y4EvTHA==/base.apk!/lib/arm64-v8a, /system/lib64, /hw_product/lib64, /system/product/lib64]

一个清理磁盘空间,又整了半天,还是要弄懂本源,知道各个目录的作用, .android 目录中其实主要还是avd 占用空间, sdk 目录早已经移动出来了。

相关推荐
不吃凉粉17 分钟前
android 副屏连接
android
OxYGC2 小时前
手机为什么能“自动跳过“开屏广告?李跳跳、GKD 与 iOS 代理软件原理盘点
android·ios·开屏广告·广告屏蔽
Android-Flutter10 小时前
Compose 管理状态 详解
android·compose
缓慢更新11 小时前
审批的加签与会签:多人意见怎么合
android·java·数据库·低代码·rxjava
我怀里的猫11 小时前
android-activity-launch-sequence
android
YB137513 小时前
Jetpack Compose 动画rememberInfiniteTransition
android
baidu_2474386116 小时前
Android 自定义竖直的虚线
android
传奇开心果编程17 小时前
【Jetpack Compose娓娓道来】 第25课:ViewModel就是UI界面的大脑
android·kotlin·移动开发·jetpack compose·编程语言理论·编程框架·声明式ui
马立杰17 小时前
PHP 未授权 RCE 应急响应:CVE-2026-109618 CVE-2026-109619 排查与加固实战
android·开发语言·php
NamoAmitabha12817 小时前
安装“编译器环境”(Android Studio)--deepseek--Cocos --Creator3.8.8
android·ide·android studio