「default」という名前のAndroid Studio Gradle構成が見つかりません


181

Android Studio(0.1.5)でアプリをコンパイルできません。アプリは、次のように含めた2つのライブラリを使用します。

settings.gradle

include ':myapp',':library',':android-ColorPickerPreference'

build.gradle

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

dependencies {
    compile files('libs/android-support-v4.jar')
    compile project(':library')
    compile project(':android-ColorPickerPreference')

}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
    }
}

コンパイルすると、次のメッセージが表示されます。

  Gradle: A problem occurred configuring project ':myapp'.
   > Failed to notify project evaluation listener.
   > Configuration with name 'default' not found.

このメッセージを手伝っていただけませんか?ありがとう!


5
settings.gradleで宣言されたライブラリプロジェクトはすべて、プロジェクトルートのbuild.gradleファイルを正しく構成していますか?また、:libraryおよび:android-ColorPickerPreferenceは、dir構造体のsettings.gradleファイルと同じレベルのディレクトリにある必要がありますか?
speedynomads 2013

この問題は、ライブラリプロジェクトの1つにbuild.gradleファイルがない場合に発生しました。このファイルを作成すると、エラーはなくなりました。
IgorGanapolsky 2014年

私の場合、gradle設定ファイルの1つが欠落しています。適切にプッシュされません。
Zar E Ahmer

gradle.buildファイルを作成する方法..iも同じ問題に直面していますか?

回答:


82

私の場合、でコンパイルしたgradle tasks --info後、ログはそこにありました:

空のビルドファイルを使用してプロジェクト ':libraries:VolleyLibrary'を評価しています。

そのため、ライブラリのbuild.gradleファイルが見つかりませんでした。理由はフォルダ構造です。

そうだった

-libraries
--volley
---VolleyLibrary

あるはずです

-libraries
--VolleyLibrary

どのようにして「:libraries:VolleyLibrary」を評価しましたか?build.gradleファイルでその行はどのように見えますか?
IgorGanapolsky 2014年

dependency {compile ':libraries:VolleyLibrary'}これは、このようなものであり、それ以上のものではありません。
guydemossyrock 2014年

1
上記のコードサンプルによると、:Librariesは大文字にする必要があります。
IgorGanapolsky 2014年

3
「gradle tasks --info」でどのようにコンパイルしますか?
toddmo 2015

8
./gradlew tasks --infoこれにより、すべてのタスクの情報が表示されます。これは何が悪いのかを見つけるのに役立つと思います。
srain 2015年

60

すべてのサブモジュールをプルするのを忘れました。だから私の

compile project(':something')

解決できませんでした。

解決

git submodule update --init

2
このコマンドを実行する必要のあるフォルダーについて説明してください-プロジェクトフォルダーまたはサブモジュールフォルダー
Ajith Memana

1
これは受け入れられるべき答えです。あなたはクローンサブモジュールに忘れてしまったことを、ほとんどの場合の手段で誤解を招くエラーメッセージ
vigilancer

1
私の場合、settings.gradleファイルからサブモジュールを削除するのを忘れていました。ので注意してください!:D
Yaroslav Havrylovych 2017年

20
compile fileTree(dir: '//you libraries location//', include: ['android-ColorPickerPreference'])

代わりに、アプリのgradleファイルで上記の行を使用してください

compile project(':android-ColorPickerPreference')

それが役に立てば幸い


19

次の手順で問題が解決しました:

  • sub-project-module / library-module設定に移動します。(押すF4モジュールを選択してから)
  • [ 追加]> [Android-Gradle]を右クリックします。
  • モジュールにbuild.gradleを追加します。
  • 次のスクリプトを追加します

    buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
    }
     }
    
    
      apply plugin: 'android-library'
    
    repositories {
    mavenCentral()
    }
    
    android {
    compileSdkVersion 18
    buildToolsVersion "18.1.0"
    
    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 18
    }
    
    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }
    
    }
       } 
    1. include ':yourModuleName'あなたのsettings.gradleに追加してください

ライブラリプロジェクトモジュールの設定を選択すると、オプションがなく、f4は何もしません。
Daniel Baughman、2015年

1
@DanielBaughmanはクエリを明確にしてください。ただし、モジュール設定がまだ見つからない場合は、2つのことを実行できます。1)[ファイル]> [モジュールのインポート]に移動し、手順に従ってください。AndroidStudioによってbuild.gradleファイルが自動的に追加され、依存関係も追加します。2)手動でbuild.gradeファイルを追加して、スクリプトを記述します。問題が解決します。
Ahmad Ali Nasir

1
ご協力ありがとうございました。私がやったことは、実際にプロジェクトにインポートしていたフォルダーを配置することです-モジュールをインポートし、プロジェクトのプロパティで、作成した新しいモジュールフォルダーではなく、ライブラリとしてインポートすることを目的としていたソースモジュールを参照しました。その参照を調整して修正しました。
Daniel Baughman、2015年

12

私もこのエラーに直面しました-ライブラリプロジェクトのbuild.gradleスクリプトを作成するのを忘れていました。


10

さらに別の原因-私はsettings.gradleにモジュールを含めようとしていました

include ':MyModule'
project(':MyModule').projectDir = new File(settingsDir, '../../MyModule')

唯一の問題は、Eclipseからモジュールをインポートしたばかりで、ディレクトリをアプリケーションプロジェクトの外に移動するのを忘れていた、つまりパス'../../MyModule'が存在しないことでした。


これも多かれ少なかれ私の問題でした。../パスに1つが多すぎて、正しい場所を指していない。Android Studio / Gradleが存在しない場合、ディレクトリを作成するため、これを追跡するのは特に困難です。「いいえ」という単純なエラーをスローする代わりに。
Joshua Pinter 2017年

7

私の解決策は、存在しないモジュールを表すsettings.gradleファイルから行を単に削除することです:

include ':somesdk'

また、メインプロジェクトのbuild.gradleから対応する行を削除します。

compile project(':somesdk')

6

このエラーが発生したとき、gitサブモジュールの問題がありました。gradle tasks --infoより詳細な問題の説明を実行してみてください。私は最初に使用gradle tasks --debugしましたが、それほど役に立ちませんでした--info


5

ライブラリ(MyLibなど)をプロジェクトに追加するとします。次の手順に従ってください。

  1. ライブラリのタイプがEclipse ADTの場合は、ライブラリをGradle Androidライブラリとして準備します
    。このジョブでは、Android Studioにインポートするだけで十分です
  2. ライブラリフォルダー、この場合はMyLibフォルダーをコピーし、メインプロジェクトフォルダーに貼り付けます。メインプロジェクトフォルダーに新しいフォルダーを作成し、ライブラリという名前を付けることをお勧めします。
  3. Android Studioに移動し、Settings.gradleファイルを開きます。メインプロジェクトにライブラリを含める必要があります。例えばinclude ':MyPrj', 'Libraries:MyLib':このincludeステートメントの現在のディレクトリは、メインプロジェクトフォルダーです。プロジェクトをフォルダーに貼り付ける場合は、プロジェクトのメインプロジェクトディレクトリに対する相対アドレスを指定する必要があります。私の場合、MyLibLibrariesフォルダーに貼り付けます。このライブラリ名はキーワードではないため、他の名前を選択できます
  4. プロジェクト構造ページを開きます(ファイル->プロジェクト構造...)モジュールをクリックしてから、メインプロジェクトをクリックし、依存関係タブに移動して+モジュール依存関係を選択します。ライブラリがあり、ライブラリを自由に選択できます。

それが役に立てば幸い


明確にするために、githubプロジェクトsliding-menu github.com/jfeinstein10/SlidingMenu/tree/master/libraryに移動して、その構造を確認してください!古い形式のandroidプロジェクト+build.gradleファイルがあります!! ありがとう、@ ABFORCE +1
デッドフィッシュ2014

この投稿はOpenCV4AndroidをAndroid Studioにインポートするのに役立ちましたので、この方法を保証します。
クレイグ

5

私の場合、Windowsでは機能するがLinuxでは失敗するGradleファイルを使用していました。include ':SomeProject'そしてcompile project(':SomeProject')、大文字と小文字を区別したと認められませんでした。



3

すべてが最初は赤く見えるように見えますが、ここを少し覗いてみると、役立つかもしれない答えが見つかりました:https : //stackoverflow.com/a/16905808/7944

元のアンサーライターでさえ自信はありませんが、フォローアップする価値はあります。また、あなたはあなたのディレクトリ構造について何も言わなかったので、私はそれが退屈なデフォルトのものであると仮定していますが、確かに知ることができません。


2

この正確なエラーのもう1つの潜在的な原因:このエラーは、build.gradleの依存関係セクションで未使用のライブラリーをコメント化することで解決したことがわかりました。これらのパスなどがすべて正しいことを確認してください。

私はbuild.gradleのコンパイルプロジェクト( ':android-ColorPickerPreference')エントリを実際によく見ます-関連するコードとbuild.gradleのこの行をコメントアウトして、コンパイルされるかどうかを確認してから、そこから解決してくださいパスまたはライブラリの問題。


2

同様の問題があり、プロジェクトにライブラリを追加する非常に簡単な方法を見つけました。

  1. プロジェクトのルートにフォルダー「libs」を作成します。
  2. JARファイルをそのフォルダーにコピーします。
  3. Android Studioに戻り、JARファイルを見つけて右クリックし、[ライブラリとして追加...]を選択します。追加するモジュールのみを尋ねられます。[アプリ]を選択します。

これで、「app」モジュールでそのJARのクラスを使用できるようになり、「import」宣言を自動的に見つけて追加し、問題なくコンパイルできるようになります。唯一の問題は、次のような絶対パスで依存関係を追加することです。

compile files('/home/user/proj/theproj/libs/thelib-1.2.3.jar')

あなたの「app / build.gradle」に。

お役に立てば幸いです。


2

以下に示すように、settings.gradleのいくつかのパスを修正することでこの問題を解決しました。

include ':project-external-module'

project(':project-external-module').projectDir = file('/project/wrong/path')

プロジェクトに外部モジュールを含めていましたが、パスが間違っていました。


1

プロジェクトにgoogle-play-services_libを手動で貼り付けたときにこの問題が発生しました。明らかに、play-servicesにはbuild.gradleファイルがありませんでした。私が学んだ解決策は、この依存関係をプロジェクトのbuild.gradleに置くことです(play-servicesディレクトリをハードコピーする代わりに)。

    compile 'com.google.android.gms:play-services:4.0.+'

1

ライブラリを手動でインポートすると、同じ問題が発生しました。ライブラリにファイル>インポートモジュールを追加してみましたが、問題は解決しました。


1

私の場合、ライブラリ(依存関係)のモジュール名のスペルを間違えたときにこのエラーを受け取りました build.gradleファイル。

したがって、モジュールの名前が正しいかどうかを確認してください。

build.gradle

dependencies {
    compile project(':module-name-of-the-library')
}

1

最近、gitサブモジュールを介して初期化されたプロジェクトを参照したときに、このエラーが発生しました。

build.gradleサブモジュール(Javaプロジェクト)のルートファイルには、ルートレベルでJavaプラグインが適用されていないことがわかりました。

持っていただけ

apply plugin: 'idea'

私はjavaプラグインを追加しました:

apply plugin: 'idea'
apply plugin: 'java'

Javaプラグインを適用すると、「デフォルトが見つかりません」というメッセージが表示されなくなり、ビルドは成功しました。


1

また、プロジェクト内にモジュールファイルがあるかどうかを確認してください。

たとえば、Volleyモジュールを使用するアプリがあります。Android開発の研究中に、「ボレー」ディレクトリ内にあるファイルを誤って削除しました。

~/git/Sandbox/android/HelloWorld/volley $ ll
total 8
drwxrwxr-x 2 ivanleon ivanleon 4096 Jun 16 22:26 ./
drwxrwxr-x 6 ivanleon ivanleon 4096 Jun 17 01:51 ../

プロジェクトのクローンを作成しました(下記を参照)。次に、Android Studioでプロジェクトの同期を作成し([ツール]> [Android]> [Gradleファイルとプロジェクトを同期])、Gradleビルドが正常に完了しました(Gradleコンソール:Android Studioの右下隅) ;)。

~/git/Sandbox/android/HelloWorld/volley $ git clone https://android.googlesource.com/platform/frameworks/volley
Cloning into 'volley'...
remote: Counting objects: 164, done
remote: Finding sources: 100% (164/164)
remote: Total 3222 (delta 307), reused 3222 (delta 307)
Receiving objects: 100% (3222/3222), 1.22 MiB | 114.00 KiB/s, done.
Resolving deltas: 100% (307/307), done.
Checking connectivity... done.

~/git/Sandbox/android/AndroidGetJSON $ ls volley
Android.mk      build         build.xml         pom.xml       
proguard-project.txt      src    bintray.gradle  build.gradle
custom_rules.xml  proguard.cfg  rules.gradle          volley.iml

0

あなたのbuild.gradleモジュール/ライブラリのは同じくらい簡単として考えられます。

apply plugin: 'java'

sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7

モジュールが.java POJOクラスのコレクションである場合。

それがモデル/エンティティークラスであり、アノテーションを使用していて、いくつかの依存関係がある場合は、それらを次の場所に追加できます。

apply plugin: 'java'

sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.j256.ormlite:ormlite-core:4.48'
    compile 'com.j256.ormlite:ormlite-android:4.48'
    compile 'com.j256.ormlite:ormlite-jdbc:4.48'
}

0

これは、インポートまたはコピーされたフォルダー/プロジェクトをライブラリフォルダーのモジュールとしてコンパイルしているときに発生します。この問題は、build.gradleファイルを含めなかったときに発生していました。ファイルを追加すると、すべてうまくいきました。


0

私にとっては、グレードによって使用できない(参照されたプロジェクトへの)相対シンボリックリンクであることがわかりました。(私はライブラリを参照していました)。それはかなりエッジの効いたエッジケースですが、多分それは将来誰かを助けるでしょう。

絶対シンボリックリンクを張って解決しました。

前にln -s ../libraryln -s /the/full/path/to/the/library


0

私も同じ問題に直面し、settings.xmlで1つのフラグ(gradle.ext.set( "allowLocalEdits"、true))をfalseに変更することで解決しました。


0

私にとって、依存ライブラリの1つが正しいパスに存在しませんが、エラーメッセージはそのライブラリを正しく示していません。

たとえば、私が見逃し:library-3たのはエラー:library-1です。

貧しいグラドル。


-1

Volleyライブラリを追加して、プログラムを同期して実行してみてください。1つがプルされ、ボレーが使用されていて、エラーに「default」という名前の-Android Studio Gradle Configurationが表示されない場合は、ボドルライブラリをグラドルに追加する手順に従ってください。それが役に立てば幸い。私はこの方法で問題を解決しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.