2013-05-21 12 views
16

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サポートライブラリですか?

+0

どのように回避策については、この問題は、設定された依存関係によっては? コンパイルしたファイル(「path_to_your_sdk /エクストラ/アンドロイド/サポート/ V4 /アンドロイド・サポート・v4.jar」、 – kingori

答えて

16

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

+2

具体的には、これをルート項目あなたのbuild.gradle:repositories { mavenCentral() } 詳細:http://www.jayway.com/2013/02/26/using-gradle-for-building-android-applications/ –

2

dependencydependenciesタグに追加する必要があります。あなたはlibsフォルダにandroid-support-v4.jarライブラリを持っている場合は、以下に記載するコードを追加しよう:

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

私は1つが自分のlibsが明示的にフォルダにこのjarファイルを置く必要があるとは思わない。それはやっての古い方法でしたEclipseでの作業。代わりに、GradleとAndroidスタジオは最新のサポートライブラリをフェッチして、 'compile'依存関係を追加すると自動的にプロジェクトにパッケージ化します。 –

+0

あなたは本当のMVPです –

8

http://pastebin.com/FmcCZwA5

このペーストはAndroidAnnotations、ダガー、ジャクソンとRobolectricと精巧なプロジェクトです。

あなたが必要とするすべては、(上記のリンクされたコードの行44)と

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

を交換

repositories { 
    mavenCentral() 
} 

を追加で

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

落とし穴:最終ビットがオンに動作しますAndroid Studio 0.2以降は新しくインストールした場合のみ使用できます。 0.2 Studioにはサポートとgoogle apiライブラリを提供するために内部m2リポジトリが付属しているので、以前のバージョンからアップグレードした場合、SDKにはそれがありません。このようなファイルパスに基づいて

もSDK

にlocal.propertiesファイルは、ルートフォルダとsdk.dirポイントに存在していることを確認してください
関連する問題