Подтвердить что ты не робот

Gradle не удалось найти com.android.databinding: dataBinder: 1.0-rc0

Поскольку я перехожу к руководству по привязке данных Android от https://developer.android.com/tools/data-binding/guide.html. Я убедился, что я запускаю Android Studio 1.3 (версия canary).

Следуя рекомендациям, я получаю эту ошибку:

Gradle sync failed: could not find com.android.databinding:library:1.0-rc0

У кого-то еще такая же проблема? Благодарим за помощь.

App build.gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0-beta1'
        classpath "com.android.databinding:dataBinder:1.0-rc0"
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

Модуль build.graddle

apply plugin: 'com.android.application'
apply plugin: 'com.android.databinding'

apply plugin: 'android-apt'
def AAVersion = '3.3'
def MyProject = 'com.commonsware.android.frw.filesdemo'

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'
    }
}

repositories {
    mavenCentral()
}

apt {
    arguments {
        androidManifestFile variant.outputs[0].processResources.manifestFile
        resourcePackageName "$MyProject"
    }
}

android {
    compileSdkVersion 22
    buildToolsVersion "22"

    defaultConfig {
        applicationId "$MyProject"
        minSdkVersion 17
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions{
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/services/com.fasterxml.jackson.core.JsonFactory'
    }

    dexOptions {
        preDexLibraries = false
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'

    compile "com.squareup:otto:1.3.6"
    compile "commons-io:commons-io:+"
    compile 'com.fasterxml.jackson.jr:jackson-jr-all:2.5.0'
    compile 'com.astuetz:pagerslidingtabstrip:1.0.1'

    apt "org.androidannotations:androidannotations:$AAVersion"
    compile "org.androidannotations:androidannotations-api:$AAVersion"
}
4b9b3361

Ответ 1

У меня была эта проблема и она была решена, добавив "jcenter" в allprojects.repositories в моем build-уровне (на самом деле я использовал mavenCentral).

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
        classpath 'com.android.databinding:dataBinder:1.0-rc1'
    }
}

allprojects {
    repositories {
        mavenCentral()
        jcenter() // <=== *** Adding this fixed it ***
    }
}

Ответ 2

У меня возникли ошибки при синхронизации файлов build.gradle.

Ошибка: не удалось выполнить: com.android.databinding: library: 1.0-rc0

Ошибка: не удалось выполнить: com.android.databinding: адаптеры: 1.0-rc0

И я наконец нашел решение.

dependencies {

    // instead of the below pathes...
    //classpath "com.android.tools.build:gradle:1.3.0-beta2"
    //classpath "com.android.databinding:dataBinder:1.0-rc0"

    // I used the following classpathes.... It works!
    classpath "com.android.tools.build:gradle:1.3.+"
    classpath "com.android.databinding:dataBinder:1.+"

}

Ответ 3

Посмотрев на свою ошибку Gradle couldn't find com.android.databinding:dataBinder:1.0-rc0, вы должны попробовать это,

classpath "com.android.databinding:dataBinder:1.0-rc1"

Чтобы использовать DataBinding, выполните следующие шаги.

  • Обновите версию Android Studio до Android Studio 1.3.
  • Чтобы настроить application для использования data binding, добавьте data binding в путь класса вашего файла top-level build.gradle прямо под "андроидом".

    dependencies {
       classpath "com.android.tools.build:gradle:1.3"
       classpath "com.android.databinding:dataBinder:1.0-rc1"
    }
    
  • Затем убедитесь, что jcenter находится в списке репозиториев для ваших проектов в файле build.gradle верхнего уровня.

    allprojects {
       repositories {
           jcenter()
       }
    }
    
  • В каждом модуле, который вы хотите использовать привязку данных, примените право плагина после плагина android.

    apply plugin: 'com.android.application'
    apply plugin: 'com.android.databinding'
    
  • Clean и build ваше приложение.

Полный код

top-level build.gradle файл,

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3'
        classpath "com.android.databinding:dataBinder:1.0-rc1"

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

allprojects {
    repositories {
        jcenter()
    }
}

module-level build.gradle файл,

apply plugin: 'com.android.application'
apply plugin: 'com.android.databinding'

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.example.packagename"
        minSdkVersion 15
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.2.1'
}

Подробнее Руководство по привязке данных.

Для полной демонстрации привязка данных Android

Ответ 4

Убедитесь, что у вас Android Studio 1.3 или выше

Ваш проект build.gradle должен выглядеть примерно так:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0-beta1'
        classpath "com.android.databinding:dataBinder:1.0-rc0"

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

allprojects {
    repositories {
        jcenter()
    }
}

И ваш модуль build.gradle должен выглядеть примерно так:

apply plugin: 'com.android.application'
apply plugin: 'com.android.databinding'

android {

    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.my.appId"
        minSdkVersion 15
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

}

У меня была проблема, когда я настраивал M Preview, поэтому ничего не работало. Как только я изменил инструменты сборки на 22.0.1, а targetSdkVersion на 22, все сработало.

Ответ 5

У меня была такая же проблема и она была решена, обновив инструменты android sdk до 24.3.3.

Ответ 6

Как говорится в документации,

Чтобы использовать привязку данных, Android Plugin для Gradle 1.5.0-alpha1 или выше не требуется.

Я добавил следующую строку для проекта build.gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:1.5.0-beta2"

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

allprojects {
    repositories {
        jcenter()
    }
}

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

а затем добавьте:

dataBinding {
        enabled = true
    }

для вашего приложения build.graddle, например:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "gujarat.databinding"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    dataBinding {
        enabled = true
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:support-v4:23.1.1'
}

Ответ 7

Пожалуйста, попробуйте изменить classpath на com.android.tools.build: gradle: 1.3.0-beta 2 "и установите buildToolsVersion" 23 rc2 ".

Не забудьте обновить пакеты SDK через менеджер SDK, прежде чем делать это.

Здесь вы можете найти более подробную информацию о Android Preview SDK: Настроить предварительный просмотр SDK

Ответ 8

У меня была идентичная проблема, и она была решена, удалив плагин для android-apt. Не уверен, что там конфликтует, но что-то есть.

Ответ 9

Вам следует обновить SDK и решить эту проблему.

Ответ 10

Вы должны добавить

classpath 'com.android.tools.build:gradle:1.3.0'
classpath "com.android.databinding:dataBinder:1.0-rc0"

Ответ 11

Синхронизировать проект после добавления пути к классам