You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac环境下Android Studio配置Appium遇Desugar构建错误求助

解决Android Studio配置Appium时的transformClassesWithDesugarForDebug失败问题

看起来你这是手动导入Appium Java Client jar包导致的依赖不兼容+Desugar配置问题,我帮你梳理下具体的解决步骤:

问题根源分析

你遇到的transformClassesWithDesugarForDebug构建失败,搭配IllegalAccessException: no such method: io.appium.java_client错误,核心原因有两个:

  1. 手动导入jar包容易缺失必要的依赖项,或者jar包版本和你的Android Gradle插件(AGP)、Java版本不匹配;
  2. Appium Java Client用到了Java 8+特性,你的项目Desugar配置没跟上,导致编译时无法处理这些语法。

具体解决方案

1. 扔掉手动导入的jar包,改用Gradle依赖管理

手动加jar是最容易踩坑的方式,直接在**app模块的build.gradle(Module level)**里添加官方Gradle依赖,Gradle会自动帮你处理所有依赖关联:

dependencies {
    // 替换成和你的Appium Server版本匹配的Java Client版本,比如8.5.1(稳定版)
    // 注意:Appium Server 2.x对应Java Client 8.x,Server 1.x对应7.x及以下
    implementation 'io.appium:java-client:8.5.1'
}

2. 配置Desugar支持Java 8+特性

Appium客户端会用到Java 8的语法,必须开启Desugar才能让编译正常通过。在**app模块的build.gradle**中添加以下配置:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
        // 开启核心库Desugar支持
        coreLibraryDesugaringEnabled true
    }

    dependencies {
        // Desugar库版本要和你的AGP版本匹配:
        // 如果你用的是Android Studio 3.0(AGP 3.0.x),用1.1.5版本;AGP 7.x+用2.x版本
        coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
    }
}

3. 清理缓存并重新构建

缓存经常会引发奇怪的构建问题,按以下步骤操作:

  • 顶部菜单选择File -> Invalidate Caches...,勾选Invalidate and Restart,等待Android Studio重启;
  • 重启后依次执行Build -> Clean Project,再Build -> Rebuild Project。

4. 检查Gradle和AGP版本兼容性

如果你用的是Android Studio 3.0,对应的AGP版本应该是3.0.x,Gradle版本至少4.1。在**项目根目录的build.gradle(Project level)**里确认:

buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1' // 匹配Android Studio 3.0的AGP版本
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

同时确保你的Java SDK是1.8版本(Android Studio 3.0默认支持)。

5. 排查方法访问冲突

如果还是出现no such method错误:

  • 检查你调用的Appium方法是否在你引入的Java Client版本中存在(有些旧方法在新版本中被废弃/移除);
  • 执行./gradlew app:dependencies命令,查看依赖树,排查是否有其他库和Appium Java Client冲突,必要时用exclude排除重复依赖。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:51:49