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

基于Flutter插件集成Android原生包时依赖解析失败问题

Flutter插件迁移构建失败:无法解析JitPack上的Android依赖

问题描述

从直接使用Android原生包迁移为开发Flutter插件时,构建报错,提示无法在Google、Maven Central等仓库找到依赖com.github.convertedin:android-pixel-sdk:1.4.4。该依赖托管在JitPack,但构建系统未检索该仓库。

错误信息

执行任务 ':app:checkStageReleaseDuplicateClasses' 失败。
无法解析配置 ':app:stageReleaseRuntimeClasspath' 的所有文件。
找不到 com.github.convertedin:android-pixel-sdk:1.4.4。
已在以下位置搜索:
Google Maven仓库、Maven Central、Flutter官方仓库、JCenter、UXCam SDK仓库
被以下项目依赖:
project :app > project :convertedin

当前插件的build.gradle配置

group = "com.petsegypt.convertedin"
version = "1.0-SNAPSHOT"

buildscript {
    ext.kotlin_version = "1.8.22"
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath("com.android.tools.build:gradle:8.1.0")
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version")
    }
}

allprojects {
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
}

apply plugin: "com.android.library"
apply plugin: "kotlin-android"

android {
    if (project.android.hasProperty("namespace")) {
        namespace = "com.petsegypt.convertedin"
    }

    compileSdk = 34

    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = JavaVersion.VERSION_1_8
    }

    sourceSets {
        main.java.srcDirs += "src/main/kotlin"
        test.java.srcDirs += "src/test/kotlin"
    }

    defaultConfig {
        minSdk = 21
    }

    dependencies {
        testImplementation("org.jetbrains.kotlin:kotlin-test")
        testImplementation("org.mockito:mockito-core:5.0.0")
    }

    testOptions {
        unitTests.all {
            useJUnitPlatform()

            testLogging {
               events "passed", "skipped", "failed", "standardOut", "standardError"
               outputs.upToDateWhen {false}
               showStandardStreams = true
            }
        }
    }
}

dependencies {
    implementation 'com.github.convertedin:android-pixel-sdk:1.4.4'
}

已尝试操作

  • 清理并重建项目,无效。
  • 确认com.github.convertedin:android-pixel-sdk:1.4.4确实存在于JitPack。

解决方案

问题核心:插件自身的仓库配置不会被Flutter主App模块继承,必须在主项目的Android配置中添加JitPack仓库。

1. 修改Flutter项目根目录的android/build.gradle

找到项目根目录下的android/build.gradle,在allprojects的repositories块中加入JitPack:

allprojects {
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' } // 添加该行
    }
}

2. 清理缓存并重新构建

执行以下命令确保缓存清理干净:

flutter clean
flutter pub get
cd android && ./gradlew clean build

关键说明

Flutter插件的allprojects配置仅对插件自身构建生效,主App模块解析依赖时只会使用项目根Android模块和自身的仓库列表。因此必须在主项目的Android配置中添加JitPack,才能让构建系统找到对应的依赖。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 10:09:55