Android studio 3.0: не удается разрешить зависимость for:app@dexOptions/compileClasspath': не удалось решить проект: аниматоры


Я мигрирую в Android studio 3.0. Итак, проект не может скомпилировать модуль с именем": animator", и он отображает мне эту ошибку:

 Error:Unable to resolve dependency for
 ':app@dexOptions/compileClasspath': Could not resolve project
 :animators. <a
 href="openFile:/home/mobilepowered/MobilePowered/MyInnovalee/trunk17-10-2017/app/build.gradle">Open
 File</a><br><a href="Unable to resolve dependency for
 ':app@dexOptions/compileClasspath': Could not resolve project
 :animators.">Show Details</a>

и показать детали дает этот журнал:

 Unable to resolve dependency for ':app@dexOptions/compileClasspath':
 Could not resolve project :animators.

 Could not resolve project :animators. Required by:
     project :app
 Unable to find a matching configuration of project :animators:
      - Configuration 'debugApiElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found compatible value 'java-api'.
      - Configuration 'debugRuntimeElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found incompatible value 'java-runtime'.
      - Configuration 'releaseApiElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found compatible value 'java-api'.
      - Configuration 'releaseRuntimeElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found incompatible value 'java-runtime'.
27 69

27 ответов:

С Android Studio 2.3 (AS) проект отлично работает, и я могу запустить приложение. После обновления AS до Android Studio 3.0. я тоже получил ошибку, как показано ниже для библиотек и типа.

Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project : library_Name.

Unable to resolve dependency for ':app@release/compileClasspath': Could not resolve project : library_Name.

чтобы решить эту проблему, просто.

что-нибудь

buildTypes{
          debug{ ... }
          release{ ... }
    }

у вас есть в вашей (приложение) построить.gradle файл, вы должны включить все buildTypes{ } С теми же именами, что и like

buildTypes{
      debug{ ... }
      release{ ... }
}

на build.gradle файлы все библиотеки / модули, включенные в проект.

очистить и перестроить проект, проблема будет исправлена.

все еще проблема не исправлена, обновите gradle-обертку.свойства для

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

убедитесь, что вы в вашем проекте

  1. откройте Настройки, нажав File>настройки (в Mac, Android Studio>настройки).
  2. в левой панели, нажмите кнопку Сборка, Выполнение, Развертывание >>ш .
  3. убрать/отключить the .
  4. клик применить или ОК.

Как говорится в официальное руководство по миграции, эта ошибка возникает, когда:

ваше приложение включает тип сборки, который не зависит от библиотеки

android {
  buildTypes {
      release {
          ...
      }
      dexOptions {
          ...
        // release & debug is in project animators
        matchingFallbacks = ['release', 'debug']
      }
      debug {
          ...
      }
    }
}

задание соответствующие резервные копии конфигурации это явно правильный способ решить эту проблему.

Я потратил много времени на эту проблему, и ни одно из вышеперечисленных решений не работает для меня. Имена и количество типов сборки также были точно равны как в приложении, так и в проекте библиотеки.

единственная ошибка, которую я делал, была - в сборке проекта библиотеки.gradle, я использовал line

применить плагин: 'com.андроид.применение'

в то время как эта строка должна быть -

применить плагин: - com.андроид.библиотека'

после внесения этого изменения, эта ошибка была решена.

изменить все

compile project(':library:yourproject')

до

implementation project(path: ':library:yourproject', configuration:'default')

в ваше приложение.градля. Обратите внимание на строку с конфигурацией.

устранение:

Dowload окончательная версия Gradle

http://services.gradle.org/distributions/

gradle-4.x-rc-1-все.застежка-молния.sha256 09-Jan-2018 01: 15 +0000 64.00 B

распаковать дистрибутив

перейдите в Android Studio - > File - > Settings -> Gradle - > Use local gradle distribution Найдите файл и OK

в gradle:app напишите это, реализация(путь:': аниматоры', конфигурация: 'default')

dependencies {

.
.


implementation project(path: ':animators', configuration: 'default')

}

вот как я решил свою проблему.

вместо

compile project(':library_name')
comple project(':library_name')

в приложении gralde я использовал

implementation project(':library_name')
implementation project(':library_name')

и в моих типах сборки, например

demoTest {
 .........
}

Я добавил эту строку

demoTest {
   matchingFallbacks = ['debug', 'release']
}

даже, я столкнулся с той же проблемой.

я исправил проблему, ссылаясь на вышеизложенное Решение 2 с новым градом-4.1:

Я сделал следующие изменения gradle. Кажется, загрузка ресурсов через Maven Amazon помогла мне решить эту проблему, есть проблемы с библиотекой appcompat. Проверьте и убедитесь, что в вашей системе загружены библиотеки поддержки, совместимые с appcompat. То, что я чувствую, это просто просто ресурсы, не загруженные через maven, вызывая проблема с ошибкой компиляции. Убедитесь, что ресурсы находятся на локальном диске, чтобы устранить проблему.

как

  1. Maven Amazon url
repositories {
    maven {
        url "https://s3.amazonaws.com/repo.commonsware.com"
    }
    jcenter()
}
  1. совместимые библиотеки поддержки, загруженные на диск и ссылающиеся на совместимые библиотеки в gradle.
dependencies {
    implementation fileTree(dir: 'libs', include: \['*.jar'\])
    implementation 'com.android.support:appcompat-v7:26.0.0-alpha1'
    implementation  'com.android.support:support-v4:26.0.0-alpha1'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'

}

файл

        apply plugin: 'com.android.application'

        repositories {
            maven {
                url "https://s3.amazonaws.com/repo.commonsware.com"
            }
            jcenter()
        }

        android {
            compileSdkVersion 26
            defaultConfig {
                applicationId "com.cognizant.interviewquestions.cognizantiqpractice2"
                minSdkVersion 18
                targetSdkVersion 26
                versionCode 1
                versionName "1.0"

                javaCompileOptions {
                    annotationProcessorOptions {
                        includeCompileClasspath false
                    }
                }

                dexOptions {
                    javaMaxHeapSize "4g"
                    preDexLibraries = false
                }
            }

            buildTypes {
                release {
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }
            }
        }

        dependencies {
            implementation fileTree(dir: 'libs', include: \['*.jar'\])
            implementation 'com.android.support:appcompat-v7:26.0.0-alpha1'
            implementation  'com.android.support:support-v4:26.0.0-alpha1'
            implementation 'com.android.support.constraint:constraint-layout:1.0.2'

        }
---------------------------------------------------------------------------

enter image description here

enter image description here

У меня была та же проблема, и я решил ее, добавив 'mavenCentral()' для сборки.gradle (проект)

allprojects {
    repositories {
        ...
        mavenCentral()
    }
}

я нашел два типа решений :

  1. решение со старым gradle-3.3:

    в качестве первого и временного решения для запуска проекта с android studio 3.0, я поддерживаю старую конфигурацию моего предыдущего Android Studio 2.3

    distributionUrl=протокол HTTPS://услуги.градля.орг/распределение/Gradle в-3.3-все.zip, compileSdkVersion 25 * * и * * buildToolsVersion "25.0.3" и classpath - com.андроид.инструменты.сборка: gradle: 2.3.3

  2. решение с новым gradle-4.1:

    для работы с новыми возможностями ш 4.1 и classpath com.андроид.инструменты.сборка: gradle: 3.0.0', я пошел по этой ссылке https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html . Итак, это мои реализации :

в файле gradle-wrapper.свойства :

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

в файле build.gradle о проекте :

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        //classpath 'me.tatarka:gradle-retrolambda:3.3.1' remove this line
    }
}

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

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

в файле build.gradle приложения:

apply plugin: 'com.android.application'
//apply plugin: 'me.tatarka.retrolambda' remove this line

repositories {
    maven {
        url "https://s3.amazonaws.com/repo.commonsware.com"
    }
    jcenter()
    mavenCentral()
    maven { url "https://jitpack.io" }
}

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    defaultConfig {
        applicationId "com.imennmn.myprojectid"
        minSdkVersion 21
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        /**
         * Enabling multidex support.
         */
        multiDexEnabled true
        missingDimensionStrategy 'minApi' , 'minApi24'

        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath true
            }
        }

        dexOptions {
            javaMaxHeapSize "4g"
            preDexLibraries = false
        }

    }
    buildTypes {
        release {
            shrinkResources false
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

    lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
    }

    /**
     * Solve the problem when using multiple free source libs
     * NOTICE or LICENSE files cause duplicates
     */
    packagingOptions {
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/DEPENDENCIES'
        //exclude duplicate butterknife and parceler libs
        exclude 'META-INF/services/javax.annotation.processing.Processor'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/rxjava.properties'

    }


}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation files('libs/motwin-android-sdk-3.2.0-RELEASE-TLS.jar')
    implementation files('libs/notifmanager-android-lib-3.1.0-RELEASE.jar')
    implementation files('libs/commons-lang-2.4.jar')
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    implementation 'com.android.support:appcompat-v7:26.0.2'
    implementation 'com.android.support:support-v4:26.0.2'
    implementation 'com.android.support:design:26.0.2'
    implementation 'com.android.support:multidex:1.0.2'
    api 'com.jakewharton:butterknife:7.0.1'
    implementation 'de.hdodenhof:circleimageview:2.1.0'
    implementation 'com.android.support:percent:26.0.2'
    implementation 'com.google.android.gms:play-services-maps:11.4.2'
    implementation 'com.github.bumptech.glide:glide:3.7.0'
    implementation 'com.google.code.gson:gson:2.8.1'
    testImplementation 'junit:junit:4.12'
    implementation 'com.facebook.rebound:rebound:0.3.8'
    implementation 'com.google.android.gms:play-services-gcm:11.4.2'
    implementation 'io.reactivex.rxjava2:rxjava:2.1.1'
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'

    implementation project(':animators')

    // Retrofit2 & XmlConverter
    implementation 'com.squareup.retrofit2:retrofit:2.3.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.1.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'

    implementation('com.squareup.retrofit2:converter-simplexml:2.3.0') {
        exclude group: 'xpp3', module: 'xpp3'
        exclude group: 'stax', module: 'stax-api'
        exclude group: 'stax', module: 'stax'
    }

    implementation 'com.squareup.okhttp3:okhttp:3.4.1'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'

    //Library to reports crash
    implementation('ch.acra:acra:4.5.0') {
        exclude group: 'org.json'
    }

    implementation 'com.github.kenglxn.QRGen:android:2.3.0'

}

в построении.gradle библиотеки animator я обновляю targetSdkVersion до 26:

apply plugin: 'com.android.library'

android {
  compileSdkVersion 26
  buildToolsVersion '26.0.2'

  defaultConfig {
    minSdkVersion 21
    targetSdkVersion 26
    versionCode 1
    versionName "1.0"
  }
}

dependencies {
  implementation "com.android.support:support-compat:26.0.2"
  implementation "com.android.support:support-core-ui:26.0.2"
  implementation "com.android.support:recyclerview-v7:26.0.2"
}

убедитесь, что у вас есть отключена "Автономная работа" в настройках Gradle (Настройка - > Сборка, Выполнение, Развертывание->Инструменты Сборки->Gradle).

Я сделал эту ошибку. Я следовал руководству по ускорению сборки gradle и включил опцию автономной работы. Если это включено, Gradle не сможет загружать новые зависимости и, следовательно, приведет к ошибке "невозможно разрешить зависимость".

Я пробовал все от снятие флажка offline work до matchingFallbacks. Но ничего не получалось.

затем в зависимости приложения.gradle,

вместо

реализация проекта ( ': lib-name')

Я,

проект реализации (путь:': lib-name', конфигурация: 'default')

например: implementation project(path:':myService', configuration: 'default')

и это сработало как заклинание. :)

Я добавить модуль зависимостей С сервис и я не делаю библиотеку как ее часть проект AOSP.

на всякий случай, это поможет кому-то.

вам просто нужно сбросить зависимости в приложении.файл gradle как старый, как

androidTestImplementation 'com.android.support.test:runner:0.5'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2'

на новый

androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

Я встретил те же проблемы и решил.

из-за моей ситуации, я думаю, ваш build.gradle файл для проекта приложения содержит фрагменты ниже:

android {
    ...
    buildTypes {
        debug {...}
        release {...}
        dexOptions {...}
    }
}

но на самом деле, dexOptions не является типом сборки, вы должны двигаться из buildTypes, например:

android {
    ...
    dexOptions {
        ...
    }

    buildTypes {
        debug {...}
        release {...}
    }
}

надеюсь, что может помочь кому-то.

добавление productFlavors{} в сборку приложения.gradle решил эту проблему для меня. Смотрите ниже:

buildTypes {
        release {
             ...
        }
    }
productFlavors {
    }

похоже, что это ошибка на Gradle. Это решает проблему для меня, но это не решение. Мы должны ждать новой версии исправления этой проблемы.

на строительство.gradle в проекте set classpath 'com.андроид.инструменты.сборка: gradle: 2.3.3' вместо classpath 'com.андроид.инструменты.сборка: gradle: 3.0.0'.

на gradle-обертке.набор свойствhttps://services.gradle.org/distributions/gradle-3.3-all.zip вместо этого https://services.gradle.org/distributions/gradle-4.1.2-all.zip

в моем случае проблема у меня была из-за зависимости, которую я пытался импортировать (BottomNavigationViewEx).

эта зависимость должна быть загружена из jitpack.io и maven.google.com, и я помещал эту конфигурацию в раздел buildscript:

buildscript {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" } // this is incorrect
        maven { url "https://maven.google.com" } // this is incorrect
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    } 
}

что было неверно, мне нужно удалить эти две строки maven и включить их в правый раздел "allprojects":

allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
        maven { url "https://maven.google.com" }
    }
}

надеюсь, что это поможет кому-то, как же для меня.

моя проблема ниже

Unable to resolve dependency for ':app@debug/compileClasspath': Could not download rxjava.jar (io.reactivex.rxjava2:rxjava:2.2.2)

решается путем проверки Enable embedded Maven Repository

enter image description here

Я думаю, что это из : сделать распределение URL-адрес distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip и не вздумайте:distributionUrl=https\://services.gradle.org/distributions/gradle-4 ....

Я попытался запустить Android studio 3.0.1 с подключением к интернету. Android studio начала загружать что-то из ссылки автоматически, которая показывалась в уведомлении о сборке Gradle. Я не могу сказать, что это верный ответ, но попробуйте это.. может быть, вы сможете решить свою проблему.

Step 1:
1.Open the Preferences, by clicking File > Settings (on Mac, Android Studio > Preferences).
2.In the left pane, click Build, Execution, Deployment >> Gradle.
3.Uncheck/disable the Offline work checkbox.
4.Click Apply or OK.

Step 2:
downgrade the gradle-wrapper.properties content which you can access this 
file directory by clicking on CTRL + SHFT +R KEY 
e.g from
    distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

to 
    distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-all.zip

or to any lower version like /gradle-3.9-all.zip or /gradle-3.8-all.zip

Я попробовал все решения, приведенные выше, и ни один из них не работал для меня, я гарантировал, что у меня есть точные типы сборки и вкусы продукта в моем модуле библиотеки и модуле приложения.

при использовании Android Studio на Linux:

на: Home/Android Studio Projects folder/App name folder откройте терминал на этой странице и введите:

./gradlew -Dhttp.proxyHost

проверить, если JAVA_HOME устанавливается в допустимый каталог, если не установлено допустимое местоположение, наконец, перестроить проект.

примечание: если это не работает удалить папку gradle cache или все это и скачать снова с Android Studio.

этот поток, кажется, немного удивился, однако, что касается исходного вопроса, вам не только нужно иметь свои типы зданий в обеих сборках.gradle файлы, вы должны иметь свои productFlavors (если вы используете их, конечно) в обоих сборки.gradle файлы, а также.

перейдите к своей сборке.gradle (приложение) и удалить записи зависимостей и пусть он будет пустым вот так:

dependencies {

} 

после этого Android studio начать обновление этой части и сделать его работоспособным. Надеюсь, это поможет вам ;)

в вашей библиотеке отсутствует некоторые файлы (возможно вы не скопировали все)

попробуйте это я уже исправить мою проблему ведь в комментариях ниже

зависимости

{

compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
//compileOnly 'com.android.support.test:runner:1.0.1'
//compileOnly 'com.android.support.test.espresso:espresso-core:3.0.1'
//androidTestImplementation 'junit:junit:4.12'

}