Gradle не может найти зависимость (Android support library) - программирование
Подтвердить что ты не робот

Gradle не может найти зависимость (Android support library)

У меня проблема, что Gradle не может найти мою зависимость (Android support library).

My build.gradle выглядит так:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile files('libs/FlurryAgent.jar')
    compile group: 'com.google.android', name: 'support-v4', version: 'r7'
    compile files('libs/YouTubeAndroidPlayerApi.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17"

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 17
    }
    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        instrumentTest.setRoot('tests')
    }
}

Когда я создаю (в командной строке, без IDE), я получаю следующее сообщение:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'AndroidCalculator'.
> Failed to notify project evaluation listener.
   > Could not resolve all dependencies for configuration ':compile'.
      > Could not find com.google.android:support-v4:r7.
        Required by:
            :AndroidCalculator:unspecified

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

BUILD FAILED

Почему мне не разрешено добавлять библиотеку поддержки Android, как это?

4b9b3361

Ответ 1

Вы указали зависимость репозитория, но не объявили репозиторий. Следовательно, зависимость не может быть решена. (Репозитории/зависимости в блоке buildscript строго отделены от репозиториев/зависимостей в основной сборке script.)

Ответ 2

http://pastebin.com/FmcCZwA5

Эта паста представляет собой сложный проект с AndroidAnnotations, Dagger, Jackson и Robolectric.

все, что вам нужно, это добавить

repositories {
    mavenCentral()
}

заменить

 compile group: 'com.google.android', name: 'support-v4', version: 'r7'

с (строка 44 приведенного выше кода)

 compile 'com.android.support:support-v4:18.0.+'

Gotchas. Последний бит будет работать на Android Studio 0.2+, только если у вас была новая установка. Так как 0.2 Studio поставляется с внутренним репозитором m2, чтобы обеспечить поддержку и google-api-библиотеки, поэтому, если вы обновили предыдущие версии, ваш SDK не имеет его.

также убедитесь, что файл local.properties присутствует в корневой папке, а sdk.dir указывает на SDK

Ответ 3

Вам нужно добавить дополнительный dependency в тег dependencies. Если в вашей папке libs есть библиотека android-support-v4.jar, попробуйте добавить код, указанный ниже:

dependencies {
    compile files('libs/android-support-v4.jar')
}