web-dev-qa-db-ja.com

gradle(Android Studio)とローカルMavenリポジトリを使用している場合はアプリをビルドできません

ライブラリ Slik および Cards-UI をアプリに含めようとしています。ビルドには、Android studioとgradleを使用しています。アプリはこれがなくても正常にビルドされますが、依存関係を追加するとビルドが失敗します。ビルドのデバッグログを見ると、arrファイルのローカルリポジトリを調べていないようです。ファイルがそこにあることがわかります。インストールについては、github wikiページのチュートリアルに従いましたが、正常に機能します。エラーは次のとおりです。

A problem occurred configuring project ':climbtrack'.
> Could not resolve all dependencies for configuration ':climbtrack:_debugCompile'.
   > Could not find com.afollestad.cardsui:library:1.0-SNAPSHOT.
     Required by:
         ClimbTrack:climbtrack:unspecified
   > Could not find com.afollestad.silk:library:1.0-SNAPSHOT.
     Required by:
         ClimbTrack:climbtrack:unspecified

これが私のbuild.gradleです

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:0.7.+'
    }
}
apply plugin: 'Android'

repositories {
    mavenLocal()
    mavenCentral()
}

Android {
    compileSdkVersion 18
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.google.Android.gms:play-services:4.0.30'
    compile 'com.afollestad.cardsui:library:1.0-SNAPSHOT'
    compile 'com.afollestad.silk:library:1.0-SNAPSHOT'
}

グーグルプレイサービスの依存関係は正常に機能し、期待どおりにMaven中央リポジトリから検出されます。誰かアイデアはありますか?ありがとう

16
fooforever

これはバグです https://code.google.com/p/Android/issues/detail?id=63908

そのバグのコメント#3を見ると、回避策があります。それを試して、それが役立つかどうかを確認してください:

これは、ローカルのMavenリポジトリを使用したGradle1.9のバグのようです。

https://plus.google.com/109385828142935151413/posts/hF7W59uZ7rX を参照してください

今のところ回避策は使用することです

 maven {   url "${System.env.HOME}/.m2/repository" } 

mavenLocal()の代わりに

22
Scott Barta

Android Studio 0.4.6ではmavenLocalを使用すると正常に動作します:

repositories {
    mavenCentral()
    mavenLocal()
}

[設定] >> [Maven]でMavenのインストールを確認および構成して、ローカルリポジトリを指していることを確認します。

このアップデートが新規参入者に役立つことを願っています。

7
A.Infante