You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Android Studio与Gradle更新后Realm库构建失败求助

解决Android Studio 3.1 + Gradle 3.1.0下Realm 5.0.0构建失败的问题

我之前升级Gradle版本时也碰到过一模一样的报错,大概率是Realm 5.0.0和Gradle 3.1.0的兼容性不匹配导致的,结合你已经尝试过的操作,给你几个针对性的解决方案:

方案1:升级Realm版本到兼容Gradle 3.1.x的版本

Realm 5.0.0发布时,Gradle 3.1.0的部分特性还没被适配,后续的Realm小版本已经修复了这个问题。你可以尝试把Realm升级到5.11.0(这个版本亲测和Gradle 3.1.0兼容):

  1. 修改项目根目录下的build.gradle,更新Realm插件版本:
buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        // 把原来的5.0.0改成5.11.0
        classpath "io.realm:realm-gradle-plugin:5.11.0"
    }
}
  1. 修改app模块下的build.gradle,同步Realm库版本:
dependencies {
    // 同样升级到5.11.0
    implementation 'io.realm:realm-android-library:5.11.0'
}
  1. 执行File -> Sync Project with Gradle Files,之后再尝试Rebuild项目。

方案2:彻底清理Gradle缓存

有时候缓存损坏会导致依赖解析异常,你已经尝试过Invalidate Cache,但可以再手动清理全局Gradle缓存:

  • Windows系统:删除C:\Users\<你的用户名>\.gradle\caches目录
  • macOS/Linux系统:删除~/.gradle/caches目录
    删除后重新打开Android Studio,它会重新下载所有依赖,大概率能解决 artifact 跳过的问题。

方案3:检查Maven仓库配置

如果你的网络环境访问jcenter/google仓库不稳定,可能导致Realm依赖下载不完整。可以在根目录的build.gradle里添加国内镜像源,比如:

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

添加后重新同步,确保依赖能正常下载。

额外提醒

如果以上方法都不行,可以尝试在终端执行./gradlew clean assembleDebug --info(Windows是gradlew clean assembleDebug --info),查看更详细的错误日志,找到最初导致依赖解析失败的根源,再针对性解决。

内容的提问来源于stack exchange,提问作者Skullper

火山引擎 最新活动