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

Flutter集成相机时出现:camera_android_camerax:compileDebugJavaWithJavac编译错误

解决Flutter集成相机时:camera_android_camerax:compileDebugJavaWithJavac编译失败问题

核心解决步骤

1. 调整Java版本适配CameraX要求

CameraX新版本已不再兼容Java 8,你当前使用的Java 1.8会导致编译失败,需升级到Java 11:

  • 修改android/app/build.gradle中的compileOptions配置:
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_11
        targetCompatibility = JavaVersion.VERSION_11
    }
    
  • 同时在Android Studio中把项目JDK切换为Java 11(路径:File > Project Structure > SDK Location > JDK Location)。

2. 统一CompileSdk配置

你的build.gradle中重复写了compileSdk = 34和compileSdkVersion 34,建议删除其中一行,保留统一写法,避免配置冲突。

3. 降级Camera插件到兼容Java 8的版本(若无法升级Java)

如果暂时无法升级Java,可在pubspec.yaml中指定兼容Java 8的camera版本:

dependencies:
  camera: ^0.10.5+5  # 该版本适配Java 8,可按需调整

执行命令更新依赖并重建:

flutter clean
flutter pub get
flutter run

4. 同步Gradle版本与Flutter版本

确保Gradle插件和Gradle工具版本与Flutter 3.22.2兼容:

  • 修改android/build.gradle中的Gradle插件版本:
    buildscript {
        dependencies {
            classpath 'com.android.tools.build:gradle:7.4.2'
        }
    }
    
  • 修改android/gradle/wrapper/gradle-wrapper.properties中的Gradle分发地址:
    distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
    

5. 彻底清理缓存重建

执行以下命令清除所有缓存后重新构建:

flutter clean
rm -rf ~/.gradle/caches  # Windows用户执行:rd /s /q %USERPROFILE%\.gradle\caches
flutter pub get
flutter run

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 23:45:06