web-dev-qa-db-ja.com

Gradleが依存関係を見つけられない(Androidサポートライブラリ)

Gradleが依存関係を見つけることができないという問題があります(Androidサポートライブラリ)。

私の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このようなサポートライブラリを追加できないのはなぜですか?

16
Peter Fortuin

リポジトリの依存関係を宣言しましたが、リポジトリのを宣言していません。したがって、依存関係は解決できません。 (buildscriptブロックのリポジトリ/依存関係は、メインのビルドスクリプトのリポジトリ/依存関係から厳密に分離されています。)

16

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はサポートとgoogle apiライブラリを提供するために内部m2リポジトリに同梱されているため、以前のバージョンからアップグレードした場合、SDKにはありません。

また、local.propertiesファイルがルートフォルダにあり、sdk.dirがSDKを指していることを確認してください

8
robotoaster

dependencyタグにdependenciesを追加する必要があります。あなたが持っている場合 Android-support-v4.jarライブラリをlibsフォルダーに追加し、以下にリストするコードを追加してみてください:

dependencies {
    compile files('libs/Android-support-v4.jar')
}
2
jmodrako