找不到支持媒体-compat.aar

Could not find support-media-compat.aar

正在尝试 Firebase android gradle 应用程序。一旦我添加了 firebase 依赖项,我就会收到以下构建错误。

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all files for configuration ':app:debugCompileClasspath'.
> Could not find support-media-compat.aar (com.android.support:support-media-compat:26.1.0).
  Searched in the following locations:
      https://jcenter.bintray.com/com/android/support/support-media-compat/26.1.0/support-media-compat-26.1.0.aar
> Could not find support-core-utils.aar (com.android.support:support-core-utils:26.1.0).
  Searched in the following locations:
      https://jcenter.bintray.com/com/android/support/support-core-utils/26.1.0/support-core-utils-26.1.0.aar
> Could not find support-compat.aar (com.android.support:support-compat:26.1.0).
  Searched in the following locations:
      https://jcenter.bintray.com/com/android/support/support-compat/26.1.0/support-compat-26.1.0.aar
> Could not find support-compat.aar (com.android.support:support-compat:26.1.0).
  Searched in the following locations:
      https://jcenter.bintray.com/com/android/support/support-compat/26.1.0/support-compat-26.1.0.aar

好像只是在搜索jcenter。但是 jcenter 的每个引用都有其他列出的 repos 以供搜索。

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:3.2.0"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files

        classpath 'com.google.gms:google-services:4.2.0' // google-services plugin
    }
}

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

app/build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.3"
    defaultConfig {
        applicationId "io.nme.samples.displayingabitmap"
        minSdkVersion 16
        targetSdkVersion 28
        versionCode 181
        versionName "1.0.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    api fileTree(dir: 'libs', include: ['*.jar'])
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    api 'com.android.support:appcompat-v7:24.2.1'
    api 'com.android.support:support-v4:24.2.1'

    testImplementation 'junit:junit:4.12'

    dependencies {

        api project(':extension-api')
        api project(':haxe-firebase')
    }

    implementation 'com.google.firebase:firebase-core:16.0.4'
}

// ADD THIS AT THE BOTTOM
apply plugin: 'com.google.gms.google-services'

我在这里错过了什么?

您必须替换 26.1.0 并使用 28.0.0 版本的支持库

api 'com.android.support:appcompat-v7:24.2.1'
api 'com.android.support:support-v4:24.2.1'

这就是你的问题所在。即使没有 Firebase,这也应该会导致问题。您正在使用 API 28 进行定位和构建,但您的支持依赖项位于 API 24。将它们更改为使用 28.0.0.

同时检查您的 extension-apihaxe-firebase 项目,确保它们使用最新的编译和 SDK 版本,以及构建工具版本和支持库版本。

我遇到了关于查找库的相同问题。但是通过调整存储库顺序,这个问题已经解决了。

repositories {
    google()
    jcenter()
    // others
}

看来 google 托管的 Maven 站点正是我们首先要寻找的。

顺便说一句,maven { url 'https://maven.google.com'} is used for Gradle version lower than 4.1 and google() is the newer form of that. See also this doc.

下面使用

buildscript {
ext.kotlin_version = '1.2.20'

repositories {
    jcenter()
}

dependencies {
    classpath 'com.android.tools.build:gradle:2.3.3'2.3.3
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3'
    classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0'
}
}

allprojects {
repositories
        {
            maven { url "https://dl.google.com/dl/android/maven2/" }
            maven { url "http://jcenter.bintray.com/" }
            maven { url 'https://plugins.gradle.org/m2/'}
            maven { url "https://maven.google.com" }
            maven { url 'https://jitpack.io' }
            mavenCentral()
            flatDir {
                dirs 'libs'
            }
        }
}