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

执行flutter build构建Android APK时遭遇JetifyTransform错误

构建Flutter Android APK时JetifyTransform失败问题

问题描述

执行flutter build命令构建Android APK时,:app:mergeDebugAssets任务执行失败,核心错误为Jetify无法转换androidx.activity:activity:1.6.1和androidx.annotation:annotation-experimental:1.3.0的aar文件。

相关配置文件

pubspec.yaml

name: app
description: app

version: 3.0.0+16

environment:
  sdk: ">=2.11.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  shared_preferences: ^2.0.0
  cupertino_icons: ^0.1.2
  custom_switch: ^0.0.1
  settings_ui: ^0.4.0
  animated_text_kit: ^4.2.2
  flutter_svg: ^1.0.0
  simple_permissions: any
  location: ^2.5.0
  path_provider: ^2.0.0
  percent_indicator: ^2.1.3
  rflutter_alert: ^1.0.3
  barcode_scan2: any
  intl: ^0.17.0
  datetime_picker_formfield: ^1.0.0
  json_annotation: ^3.0.1
  pdf: ^3.4.1
  advance_pdf_viewer:
    git: https://github.com/ncdm-stldr/pdf_viewer.git
  data_tables: ^1.0.3
  network_image_to_byte: ^0.0.1
  date_picker_timeline: ^1.2.0
  image: ^3.0.1
  line_icons: any
  printing: ^5.7.4
  flutter_datetime_picker: ^1.3.8
  flutter_cache_manager: ^3.0.0
  back_button_interceptor: ^4.2.4
  google_maps_flutter: ^2.0.4
  provider: ^4.1.3
  progress_dialog: ^1.2.0
  image_picker: any
  image_cropper: ^1.2.0
  flutter_picker: any
  flutter_localizations:
    sdk: flutter
  file_picker: ^4.3.0
  cross_file: ^0.3.2
  cron: ^0.4.0
  app_tracking_transparency: ^2.0.2+1
  line_awesome_flutter: ^1.0.1
  flutter_screenutil: ^1.0.2
  animated_theme_switcher: ^1.0.5
  _fe_analyzer_shared: ^34.0.0
  theme_provider: ^0.5.0
  timer_builder: ^2.0.0
  ionicons: any
  dropdown_button2: ^2.0.0
  url_launcher: ^6.1.10
  flutter_i18n: ^0.32.4

dev_dependencies:
  dart_code_metrics: ^4.8.1
  flutter_test:
    sdk: flutter

  font_awesome_flutter: ^8.0.1

flutter_icons:
  image_path: "assets/img/icona.png"
  android: true
  ios: true

flutter:

  uses-material-design: true

  assets:
    - assets/images/
    - assets/icons/
    - assets/images/avatar.png
    - assets/images/addicon.png
    - assets/images/logo.png


  fonts:
    - family: WorkSansSemiBold
      fonts:
        - asset: assets/fonts/Work_Sans/WorkSans-SemiBold.ttf
    - family: WorkSansBold
      fonts:
        - asset: assets/fonts/Work_Sans/WorkSans-Bold.ttf
    - family: WorkSansMedium
      fonts:
        - asset: assets/fonts/Work_Sans/WorkSans-Medium.ttf

项目根目录build.gradle

ext {
    compileSdkVersion = 31
}
buildscript {

    ext.kotlin_version = '1.6.0'
    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.4'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.google.gms:google-services:4.2.0'
        classpath 'io.fabric.tools:gradle:1.30.0'

    }
    subprojects {
        afterEvaluate { project ->
            if (project.hasProperty("android")) {
                android {
                    compileSdkVersion 31
                }
            }
        }
    }

}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}
configurations.all {
    resolutionStrategy {
        force 'androidx.core:core-ktx:1.6.0'
    }
}

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

错误日志

* 出错原因:
任务':app:mergeDebugAssets'执行失败。
> 无法解析配置':app:debugRuntimeClasspath'的所有文件。
   > 无法转换activity-1.6.1.aar(androidx.activity:activity:1.6.1)以匹配属性 {artifactType=android-assets, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-runtime}。
      > JetifyTransform执行失败:/Users/riccardo/.gradle/caches/modules-2/files-2.1/androidx.activity/activity/1.6.1/23139afb40f2e445f869f2a5f07eb056b1661a3c/activity-1.6.1.aar。
         > 无法使用Jetifier转换'/Users/riccardo/.gradle/caches/modules-2/files-2.1/androidx.activity/activity/1.6.1/23139afb40f2e445f869f2a5f07eb056b1661a3c/activity-1.6.1.aar'。原因:null。(使用--stacktrace查看详细堆栈信息。)
   > 无法转换annotation-experimental-1.3.0.aar(androidx.annotation:annotation-experimental:1.3.0)以匹配属性 {artifactType=android-assets, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-runtime}。
      > JetifyTransform执行失败:/Users/riccardo/.gradle/caches/modules-2/files-2.1/androidx.annotation/annotation-experimental/1.3.0/5087c6f545117dcd474e69e1a93cacec9d7334af/annotation-experimental-1.3.0.aar。
         > 无法使用Jetifier转换'/Users/riccardo/.gradle/caches/modules-2/files-2.1/androidx.annotation/annotation-experimental/1.3.0/5087c6f545117dcd474e69e1a93cacec9d7334af/annotation-experimental-1.3.0.aar'。原因:null。(使用--stacktrace查看详细堆栈信息。)

* 建议:
使用--stacktrace选项查看堆栈跟踪。使用--info或--debug选项获取更多日志输出。使用--scan获取完整分析信息。

* 获取更多帮助:https://help.gradle.org

构建失败,耗时9秒
异常:Gradle任务assembleDebug执行失败,退出码为1

解决方案建议

  • 升级Gradle插件版本:当前使用的com.android.tools.build:gradle:3.5.4版本过低,与compileSdkVersion 31不兼容,建议升级到7.0.4及以上版本(如7.4.2),同时更新gradle-wrapper.properties中的gradle版本到对应匹配的版本(如7.5对应Gradle插件7.4.2)。
  • 移除过时依赖:Fabric已停止服务,删除buildscript中的maven { url 'https://maven.fabric.io/public' }仓库配置和io.fabric.tools:gradle:1.30.0依赖。
  • 清理Gradle缓存:执行命令删除本地Gradle缓存,Mac用户:rm -rf ~/.gradle/caches,Windows用户删除C:\Users\<你的用户名>\.gradle\caches目录,之后重新执行构建命令。
  • 规范依赖版本:将pubspec.yaml中使用any的依赖(如simple_permissions、barcode_scan2等)指定具体稳定版本,避免拉取过高版本导致依赖冲突;同时更新部分老旧依赖(如provider:4.1.3可升级到6.0.0+稳定版)。
  • 调整Jetifier配置:在android/gradle.properties文件中确保android.enableJetifier=true,若仍有问题可尝试临时禁用(但不推荐,可能引发其他AndroidX兼容问题)。
  • 升级Kotlin版本:将Kotlin版本升级到与Gradle插件匹配的版本,如使用Gradle插件7.4.2时,Kotlin版本可设置为1.7.20。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 23:14:53