Gradle Build Android Project Не удалось устранить ошибку всех зависимостей

Я пытаюсь создать свой первый проект с помощью Gradle, и я думаю, что мои файлы и настройки Gradle верны.

Я использую только один модуль и библиотеки Support V4 + AppCompatBar.

Проект — build.gradle

allprojects {
    repositories {
        mavenCentral()
    }
}

Проект — settings.gradle

include ':AssignmentTempos21'

Основной модуль — build.gradle

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:0.5.+'
    }
}

apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 17
    }
}

dependencies {
    compile "com.android.support:support-v4:18.0.+"
    compile "com.android.support:appcompat-v7:18.0.+"
}

Вывод в консоль с флагом -i:

MacBook-Air-de-Cesar-2:AssignmentTempos21 menor$ ./gradlew -i clean assemble
Starting Build
Settings evaluated using settings file '/Users/menor/workspace_android/AssignmentTempos21/settings.gradle'.
Projects loaded. Root project using build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle'.
Included projects: [root project 'AssignmentTempos21', project ':AssignmentTempos21']
Evaluating root project 'AssignmentTempos21' using build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle'.
Compiling build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle' using BuildScriptClasspathScriptTransformer.
Compiling build file '/Users/menor/workspace_android/AssignmentTempos21/build.gradle' using BuildScriptTransformer.
Evaluating project ':AssignmentTempos21' using build file '/Users/menor/workspace_android/AssignmentTempos21/AssignmentTempos21/build.gradle'.
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/support-v4/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/maven-metadata.xml]
Resource missing. [HTTP GET: http://repo1.maven.org/maven2/com/android/support/appcompat-v7/]

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':AssignmentTempos21'.
> Failed to notify project evaluation listener.
   > Could not resolve all dependencies for configuration ':AssignmentTempos21:_DebugCompile'.
      > Could not find any version that matches com.android.support:support-v4:18.0.+.
        Required by:
            AssignmentTempos21:AssignmentTempos21:unspecified
      > Could not find any version that matches com.android.support:appcompat-v7:18.0.+.
        Required by:
            AssignmentTempos21:AssignmentTempos21:unspecified

* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output.

BUILD FAILED

Total time: 40.787 secs

person cesards    schedule 04.08.2013    source источник
comment
Перейдите к этой проблеме и пометьте ее. Кажется, есть много проблем, потому что было много неопубликованных библиотек из jCenter.   -  person Patricio Sard    schedule 11.12.2018


Ответы (12)


Как говорит Питер, их не будет в Maven Central.

из Android SDK Manager загрузите «Репозиторий поддержки Android», и репозиторий библиотек поддержки Maven будет загружен в ваш каталог Android SDK (см. папку «Дополнительно»)

для развертывания библиотек в локальном репозитории .m2 вы можете использовать maven-android-sdk-deployer

Изменение 2017 года:

теперь вы можете ссылаться на онлайн-репозиторий Google M2

repositories {
google()
jcenter()
}
person kassim    schedule 16.08.2013
comment
Загрузка репозитория поддержки Android из Android SDK Manager окончательно решает эту проблему, с которой я столкнулся в проектах Android Studio 0.4.3. Остается лишь немного пожалеть о сообщении Gradle об устаревании, но это уже другая история, поэтому я открываю этот вопрос - person Franco Rondini; 01.02.2014
comment
не могли бы вы объяснить пошагово: я имею в виду первую загрузку maven-android-sdk-deployer , вторую что? - person Hosein Aqajani; 12.06.2016
comment
@H.Aqjn Я изменил ответ, чтобы он читался немного лучше (я думаю), если вы используете Gradle, вы должны быть в порядке, просто загрузив репозиторий поддержки из SDK Manager. - person kassim; 14.06.2016

Перейдите туда, где вы установили Android Studio (для меня это под C:\Users\username\AppData\Local\Android\android-studio\), откройте sdk\tools, затем запустите android.bat. Отсюда обновите и загрузите все отсутствующие инструменты сборки и убедитесь, что вы обновили репозиторий поддержки Android и библиотеку поддержки Android в разделе «Дополнительно». Перезапустите Android Studio после завершения работы диспетчера SDK.

Кажется, что Android Studio полностью игнорирует любые установленные файлы Android SDK и сохраняет собственную копию. После запуска обновления все успешно скомпилировано для меня с помощью компиляции com.android.support:appcompat-v7:18.0.+

person user2433523    schedule 19.09.2013
comment
Это действительно помогло мне, я ожидал, что Android Studio будет использовать Android SDK, который я вручную установил на свой компьютер. То, что IDE использует собственный Android SDK вместо определенного разработчиком, действительно раздражает. SDK должен быть отделен от IDE. - person samael; 19.10.2013
comment
У меня НЕТ ИДЕИ, что у Android Studio есть собственная версия SDK в AppData. Это очень запутанно! - person pqvst; 25.10.2013
comment
Мне пришлось установить Extras/Android Support Library, перезапустить SDK Manager, после чего появился репозиторий поддержки Android. - person Leos Literak; 20.05.2014
comment
Это избавило меня от ошибки com.android.support:appcompat-v7:19.+. - person Nick Westgate; 27.06.2014
comment
Что ж, у меня тоже была аналогичная путаница, когда я заметил несколько экземпляров Android SDK на своем компьютере с Ubuntu. Поэтому у меня было плохое подозрение, что AndroidStudio создает свой собственный экземпляр. В настоящее время я запускаю AS v.2.1.2, и эта же проблема все еще присутствует. Интересно, планирует ли команда исправить это в ближайшее время, или они считают это фичей :) - person Sold Out; 22.09.2016

Если вы используете безголовую CI и устанавливаете Android SDK через командную строку, обязательно включите пакеты m2repository в аргумент --filter:

android update sdk --no-ui --filter platform-tools,build-tools-19.0.1,android-19,extra-android-support,extra-android-m2repository,extra-google-m2repository

Обновить

Начиная с Android SDK Manager rev. 22.6.4 больше не работает. Попробуйте это вместо этого:

android list sdk --all

Вы получите список всех доступных пакетов SDK. Посмотрите числовые значения компонентов из первой команды выше («Репозиторий Google» и другие, которые вы могли пропустить).

Установите пакеты, используя их числовые значения:

android update sdk --no-ui --all --filter <num>

Обновление №2 (сентябрь 2017 г.)

Благодаря «новым» инструментам Android SDK, выпущенным ранее в этом году, команда android устарела, а аналогичная функциональность была перенесена в новый инструмент под названием sdkmanager:

Список установленных компонентов:

sdkmanager --list

Обновить установленные компоненты:

sdkmanager --update

Установите новый компонент (например, инструменты сборки версии 26.0.0):

sdkmanager 'build-tools;26.0.0'
person friederbluemle    schedule 14.01.2014
comment
Спасибо за хорошую командную строку! К сожалению, теперь (Android SDK Manager rev. 22.6.4 (из About в графическом интерфейсе)) я получаю ответ: Error: Ignoring unknown package filter 'platform-tools', а также для 'android-19' и 'extra-android-support'. Ваше здоровье! - person sdaau; 08.06.2014
comment
Я получаю, что папка SWT '/opt/android-sdk-linux/tools/lib/arm' не существует - person Marian Klühspies; 19.08.2014
comment
Спасибо за подсказку. Я запустил: android list sdk --all |grep -i repos, это дает мне "98-Android Support Repository, revision 6" и "106-Google Repository, revision 11". Затем я установил оба пакета под управлением android update sdk -u -a -t 98,106, что, наконец, решило проблему (я использую adt-bundle-linux-x86-20140702.zip, не знаю, какая это версия SDK Manager). - person Mateusz Szulc; 04.09.2014
comment
Вы спасли здесь много жизней, упомянув о необходимости установки Google Repository. Спасибо. - person yati sagade; 26.11.2014
comment
Да, у меня тоже отсутствовали -- 142 – репозиторий поддержки Android, версия 21 – 150 – репозиторий Google, версия 22. - person Bruce Lim; 06.10.2015
comment
Команда --all помогла мне (сервисы Google Play не создаются в безголовой среде): android update sdk --no-ui --all --filter 147 148 154 155 - person Kris Krause; 21.12.2015

Эти зависимости не существуют в Maven Central (см. это).

person Peter Niederwieser    schedule 04.08.2013

compileSdkVersion 17
targetSdkVersion 17

изменить версию компиляции с 18 на 17

compile "com.android.support:support-v4:17.0.+"
compile "com.android.support:appcompat-v7:17.0.+"
person Kanishka    schedule 06.01.2016

В дополнение к ответу Кассима:

Как говорит Питер, их не будет в Maven Central.

Либо используйте maven-android-sdk-deployer для развертывания библиотек в локальном репозитории.

Или из Android SDK Manager загрузите репозиторий поддержки Android (в разделе «Дополнительно»), и репозиторий M2 библиотек поддержки будет загружен в ваш каталог Android SDK.

Мне также пришлось обновить «Локальный репозиторий Maven для библиотек поддержки» в Android SDK Manager.

person ModusPwnens    schedule 08.03.2016

чтобы повторить @friederbluemle, вы также можете просто запустить диспетчер SDK из командной строки, если у вас установлены инструменты Android SDK:

$ android

а затем в появившемся пользовательском интерфейсе выберите инструменты/репозитории, которые необходимо установить - в вашем случае репозиторий библиотеки поддержки

person kip2    schedule 06.10.2014

напишите следующую инструкцию в файле build.gradle вашего приложения.

com.android.support:appcompat-v7:18.0.+

Вот и все

person Ganpat Kaliya    schedule 07.09.2015

Попробуйте отключить брандмауэр, it works for me. Похоже, что Android Studio хочет загрузить некоторые зависимости, и наш брандмауэр не позволяет ей это сделать, just be aware that turning your firewall off may lower the security of your computer. Если у вас есть больше времени, вы можете вручную разрешить своей студии Android обходить брандмауэр, таким образом, вы можете включить брандмауэр, позволяя студии Android загружать все, что она хочет.

person Cary Bondoc    schedule 24.11.2015

У меня было это сообщение в Android Studio 2.1.1 на вкладке Gradle Build. Я установил много файлов из SDK Manager, но это не помогло.

Мне нужно было щелкнуть следующую вкладку «Gradle Sync». Была ссылка «Установить репозиторий и проект синхронизации», которая устанавливала «Репозиторий поддержки Android».

person PiTheNumber    schedule 23.05.2016

  1. Установить Android SDK-менеджер
  2. проверьте, установлены ли строительные инструменты. установить апи 23.
  3. из Android SDK Manager загрузите «Репозиторий поддержки Android»
  4. удалить кордова-плагин-андроид-поддержка-v4
  5. строить
person Matas Lesinskas    schedule 30.09.2016

Добавьте это в свой град:

allprojects {
    buildscript {
        repositories {
            maven {
                url "https://dl.bintray.com/android/android-tools"
            }
        }
    }
...
}
person augustocbx    schedule 11.12.2018