не удалось разрешить com.android.support:appcompat-v7:22 и com.android.support:recyclerview-v7:21.1.2

Установил ALL Extra и SDK API 21-22 в т.ч. изменил

compileSdkVersion 22 to 21 и buildToolsVersion '22.0.1' to 21.1.2.

У меня проблемы с рендерингом для API 22. Я попытался изменить версию на ‹= 21, но все еще получаю сообщение об ошибке.


person Dump Choenthanomwong    schedule 26.03.2015    source источник
comment
Выберите здесь в соответствии с вашим compileSdkVersion: developer.android.com/studio/releases/ build-tools.html   -  person uniruddh    schedule 05.07.2016


Ответы (17)


Это правильная версия, которую вы можете добавить в свой build.gradle в соответствии с потребностями API.

API 24:

implementation 'com.android.support:appcompat-v7:24.2.1'
implementation 'com.android.support:recyclerview-v7:24.2.1'

API 25:

implementation 'com.android.support:appcompat-v7:25.4.0'
implementation 'com.android.support:recyclerview-v7:25.4.0'

API 26:

implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:recyclerview-v7:26.1.0'

API 27:

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
person priyank    schedule 26.03.2015
comment
Есть ли ресурс Android, где можно увидеть разные версии? - person powder366; 21.09.2015
comment
@powder366, вы можете проверить версии в SDK Manager. - person priyank; 25.02.2016
comment
@powder366 смотрите мой ответ ниже, как определить доступную версию библиотеки поддержки - person Anton Kizema; 18.03.2016
comment
appcompat-v7 23.3.0 доступен. - person CSchulz; 09.06.2016
comment
Прежде чем углубляться в это, убедитесь, что репозиторий поддержки Android установлен, как это предлагается в других ответах. - person Nic Nilov; 17.03.2017
comment
А как насчет com.android.support:appcompat-v7:24.2.1' ?? - person Farooq Khan; 27.06.2017
comment
Ответ уже не актуален - person Myoch; 27.07.2017

Чтобы это работало, мне пришлось установить:

compile ("com.android.support:support-v4:22.2.0")
compile ("com.android.support:appcompat-v7:22.2.0")
compile ("com.android.support:support-annotations:22.2.0")
compile ("com.android.support:recyclerview-v7:22.2.0")
compile ("com.android.support:design:22.2.0")

компилировать ("com.android.support:дизайн:22.2.0")

В документации указано другое (docs):

com.android.support:support-design:22.0.0

person fabiozo    schedule 01.06.2015

Реальный путь для библиотек репозитория поддержки:

введите описание изображения здесь

  1. Вы должны загрузить библиотеки репозитория поддержки.

Если проблема все еще существует:

  1. Перейдите к реальному пути к библиотекам репозитория поддержки и убедитесь, что существует следующая папка:

    "ANDROID_SDK_DIRECTORY\extras\android\m2repository\com\android\support" 
    

    В этой папке есть библиотеки поддержки, которые невозможно найти. Например:

    "ANDROID_SDK_DIRECTORY\extras\android\m2repository\com\android\support\appcompat-v7"
    
  2. Откройте папку appcompat-v7 и вы увидите папки со всеми доступными версиями. Вы должны использовать только одну из этих версий в зависимостях файла build.gradle или использовать +, например. 18.0.+

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

Это путь, взятый из файла зависимостейgrade.build:

com.android.support:appcompat-v7:18.0.0

Обратитесь к реальному пути на вашем жестком диске -->

ANDROID_SDK_DIRECTORY\extras\android\m2repository\com\android\support\appcompat-v7\18.0.0

Если такой папки нет, вы получите сообщение об ошибке:

"failed to resolve com.android.support:appcompat-v7:18.0.0"  

p.s. Если у вас Windows x64, при установке sdk и jdk убедитесь, что в пути установки нет Program Files(86). Скобки, которые добавляют Windows, могут вызвать дополнительные проблемы с разрешением путей для вашего проекта. Используйте простые пути для папки установки.

Например:

c:\androidSDK\
person Sergey Orlov    schedule 14.12.2015
comment
У меня нет такой папки, и, следовательно, я получаю указанную вами ошибку: не удалось решить .... Отсюда и далее, как я могу решить эту проблему? Любая идея? - person Srujan Barai; 02.04.2019

Не удалось найти: com.android.support:appcompat-v7:22.0.0

Ответ «Я буквально пробовал все остальное»:

Эта проблема также возникает, если у вас нет обновленной библиотеки поддержки Android и репозитория поддержки Android. Просто установите с помощью диспетчера SDK.

person Paul Totzke    schedule 06.05.2015
comment
Не то чтобы другие ответы были неверными, но проблема для меня заключалась в том, что на нашей сборочной машине не было обновленной библиотеки поддержки. - person fawaad; 14.04.2016
comment
Конечно, нет. Но когда вы гуглите эту ошибку и пробуете все варианты компиляции, и ничего не работает, это обычно является виновником, и его не совсем очевидно, чтобы выяснить это самостоятельно. Рад, что это помогло! - person Paul Totzke; 14.04.2016

Наряду с другими предоставленными решениями убедитесь, что в проекте/build.gradle есть следующее:

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}
person Ashraf Alshahawy    schedule 25.09.2017

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

Допустим для 22 -> нужно писать как 22.0.0, а не просто 22

для 22.1 -> 22.1.0

Итак, ваши зависимости должны выглядеть так

compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.android.support:support-v4:22.0.0'
compile 'com.android.support:cardview-v7:22.0.0'
compile 'com.android.support:recyclerview-v7:22.0.0'

I язык программистов нужно дополнить лишними нулями.

Надеюсь, это решит вашу проблему

person Ashok Varma    schedule 27.03.2015
comment
и вы получили ошибку, когда использовали 21.1.2, потому что вы уже обновили библиотеку поддержки до 22.0.0. так что 21.1.2 больше не существует. Это так неверно. Когда вы обновляете библиотеки, это не означает, что вы не можете использовать более старые версии - person priyank; 29.03.2015

я решаю это

изменить 22.0.0 на 21.0.3

dependencies {

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

//compile 'com.android.support:appcompat-v7:22.0.0'

compile 'com.android.support:appcompat-v7:21.0.3'  }

может быть, я скачал com.android.support:appcompat-v7:21.0.3, но не получил compile 'com.android.support:appcompat-v7:22.0.0'

когда я использую SDK Manager, обновляю свои support library и support repository, проблема исчезает.

person Jeffery Ma    schedule 25.05.2015

ПРИМЕЧАНИЕ 1. Все библиотеки com.android.support должны использовать одну и ту же спецификацию версии (смешение версий может привести к сбоям во время выполнения).

ПРИМЕЧАНИЕ 2. Библиотека поддержки не должна использовать версию, отличную от версии compileSdkVersion.

Для API 28 вы можете использовать:

implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
implementation 'com.android.support:recyclerview-v7:28.0.0-alpha1'

https://mvnrepository.com/artifact/com.android.support/appcompat-v7/28.0.0-alpha1 https://mvnrepository.com/artifact/com.android.support/recyclerview-v7/28.0.0-alpha1

Все библиотеки поддержки: https://mvnrepository.com/artifact/com.android.support

person Aniket Thakur    schedule 08.07.2018

Проще использовать знак "+" в номере версии. Например

compile 'com.android.support:support-v4:22.0.+'
compile "com.android.support:appcompat-v7:22.0.+"

В этом случае вам не придется менять версии для одного и того же номера API.

person Kate    schedule 09.04.2015
comment
никогда не используйте знак +, это приведет к непредсказуемому поведению, если вы не абсолютно уверены - person ; 27.04.2015
comment
Я видел использование + в файле build.gradle в нескольких разделах документации для разработчиков Android. Например, ссылка1 или link2 и другие (для просмотра нужно прокрутить страницу). Никаких упоминаний о каких-либо проблемах с этим не было и у меня тоже никогда не было. Но если вы это сделали, было бы полезно добавить несколько ссылок с описанием проблемы. - person Kate; 07.07.2015
comment
если вы используете + ваша сборка имеет динамическое поведение, вы не будете уверены, какая версия будет разрешена. Внешние изменения могут вызвать ошибки. - person LGama; 14.07.2015

Перейдите в «Сообщения Gradle Sync» и нажмите «Установить репозиторий и синхронизировать проект». Это установит необходимый файл в Android SDK, и после синхронизации вы сможете создать градиент или запустить свой проект.

person Ravi Ranjan    schedule 20.08.2015

Вы их импортируете? Как это:

compile 'com.android.support:appcompat-v7:21.0.3'
compile 'com.android.support:recyclerview-v7:21.0.3'
person oldfeel    schedule 26.03.2015

compile ("com.android.support:support-v4:22.2.0")
compile ("com.android.support:appcompat-v7:22.2.0")
compile ("com.android.support:support-annotations:22.2.0")
compile ("com.android.support:recyclerview-v7:22.2.0")
compile ("com.android.support:design:22.2.0")

вставьте приведенный выше код в приложение gradle.

и при настройке проекта выберите пустое действие вместо пустого действия.

person Abhi Soni    schedule 18.11.2015

Исправлена ​​моя проблема, изменив эти

compile 'com.android.support:cardview-v7:21.0.+'
compile 'com.android.support:recyclerview-v7:21.0.+'

to

compile 'com.android.support:cardview-v7:23.0.+'
compile 'com.android.support:recyclerview-v7:23.0.+'

это означает, что ваша целевая версия SDK должна быть такой же, как версия cardView и recyclerView и других библиотек Google.

targetSdkVersion 23
person Abhishek    schedule 19.01.2016

Инструменты > Android > Диспетчер SDK

Выберите все устаревшие пакеты и обновите их.

person Naskov    schedule 07.04.2016

У меня была такая зависимость в build.gradle -

compile 'com.android.support:recyclerview-v7:+'

Но это вызывает нестабильные сборки. Убедитесь, что он работает нормально для вас, и найдите в своем диспетчере SDK для Android текущую версию доступной библиотеки поддержки и замените эту зависимость на

def final RECYCLER_VIEW_VER = '23.1.1'
compile "com.android.support:recyclerview-v7:${RECYCLER_VIEW_VER}"
person Anton Kizema    schedule 18.03.2016

Я решил проблему с обновлением всех пакетов из Android SDK Manager, а также мне пришлось установить Extras -> Android Support Repository.

person Tonatio    schedule 04.07.2017

person    schedule
comment
Дублированный ответ. См. ответ Ашрафа Альшахави выше. - person Mo Zaatar; 20.05.2019
comment
@MoZaatar Это не дублирующийся ответ. Я хочу показать, что если вы поместили строку google() ниже, то также произошла эта ошибка, поэтому поместите верхнюю часть всей строки, как мой ответ. Я не копирую никому ответ. - person Makvin; 21.05.2019
comment
@MoZaatar Если в этом ответе есть строка google(), тогда я выбираю редактирование или комментарий. Почему я должен давать новый ответ. Я решил эту проблему таким образом, поэтому я поместил свой ответ. - person Makvin; 22.05.2019