エラー:「デフォルト」という名前の設定がAndroid Studioに見つかりません


117

ボレーライブラリを使用してAndroidでネットワーク操作を実行しています。そこで、Android StudioとGradleシステムで作成したプロジェクトにこのライブラリを追加しようとしています。

プロジェクトにボレーライブラリを追加しましたが、gradleと同期するとエラーメッセージが表示されます。ここにあるすべての答えを試しましたが、うまくいきませんでした。

エラーメッセージ:「デフォルト」という名前の設定がAndroid Studioに見つかりません

ボレー/build.gradle

apply plugin: 'android-library'

android {

    compileSdkVersion 19
    buildToolsVersion '19.0.1'

    sourceSets {
        defaultConfig {
            minSdkVersion 8
            targetSdkVersion 19
        }

        main {
            assets.srcDirs       = ['assets']
            res.srcDirs          = ['res']
            aidl.srcDirs         = ['src']
            resources.srcDirs    = ['src']
            renderscript.srcDirs = ['src']
            java.srcDirs         = ['src']
            manifest.srcFile 'AndroidManifest.xml'

        }
    }
}

app / build.gradle

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.1'

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

dependencies {
    compile 'com.android.support:appcompat-v7:19.+'
    compile project(':library:volley')
}

root / build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

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

allprojects {
    repositories {
        mavenCentral()
    }
}

settings.gradle

include ':app'
include ':library:volley'

projectname / libraryのような正しい場所にライブラリフォルダーを追加しましたか?
Ajay S

appディレクトリにライブラリディレクトリを追加しました
Bot



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

回答:


68

プロジェクトのルートロケーションにライブラリフォルダーを追加し、そこにすべてのライブラリファイルをコピーします。元のYourProject /ライブラリの場合は、それを同期させて残りのものは私には問題ないようです。


5
ライブラリディレクトリ内にbuild.gradleファイルまたは.imlファイルが欠落している可能性もあります
WKS

7
@alebは、ターミナルコマンドを実行するだけで完全なエラーメッセージを取得できます./gradlew assembleDebugAndroid Studioまたは外部端末アプリから実行できます。
2015

例と写真を投稿できますか?おかげで、このメソッドは動作しないため
delive

私の日を救ってくれた仲間に感謝します。ありがとう<3
Gufran Khurshid

1
これにより、サブモジュールが不足していることに気づきました。サブモジュールは、@ ViliusKの回答によってより明確に拡張されています。
イオノクラストブリガム

96

試してください:

git submodule init
git submodule update

1
これはサブモジュールとして追加されたライブラリで確実に機能します、ありがとう!
Arne、

@Vilius、これはターミナルでどのディレクトリから実行できますか?プロジェクトディレクトリで実行しようとしましたが、と表示されていますNot a git repository (or any of the parent directories)。インポートしようとしたサンプルアプリがあり、gradle用にセットアップされていなかったため、ラップしました。それが問題なのかしら。実際、私にはsettings.gradleファイルさえありません。のみbuild.gradleと他のいくつか。
Azurespot 2015年

2
プロジェクトのルートディレクトリから実行する必要があります。git repoのプロジェクトである必要があります。そして、それはサブプロジェクトを持つプロジェクトであるべきです。build.gradleファイルで次のようなものを探しますcompile project(':libs:my-custom:library')
ViliusK

1
>サブモジュールを使用すると、リポジトリのサブディレクトリに別のGitリポジトリを保持できます。他のリポジトリには独自の履歴があり、現在のリポジトリの履歴には影響しません。これは、サードパーティのライブラリなどの外部依存関係を持つために使用できます。出典
ViliusK

3
gitサブモジュールはgradleビルドエラーとどのように関係していますか?
テディ2016年

22

これはおそらくまれなケースですが、私にとっては、settings.gradleに含まれているライブラリがありませんでした。

例えば私が持っていた: include ':libraries:Android-RateThisApp:library'私のsettings.gradle

しかし、フォルダーAndroid-RateThisAppは空でした。このサブモジュールをチェックアウトするとすぐに、gradle同期が成功します。


はい、あなたはおそらくに持っていたgit submodule initgit submodule update。サブモジュールでプロジェクトをチェックアウトするとき、それは一般的なケースです。
ViliusK 2015年

まったく珍しいことではありません...これは私にとってこのようなエラーの場合です。
sirvon 2015年

これが私に当てはまりました!react-native-mapsを更新し、androidディレクトリへのパスを変更しました
cbartondock '26 / 07/26

14

複数のプロジェクトに同じライブラリフォルダーを使用する場合は、次のように外部の場所をgradleで参照できます。

settings.gradle:

include 'app', ':volley'
project(':volley').projectDir = new File('../libraries/volley')

アプリのbuild.gradle

dependencies {
    ...
    compile project(':volley')
...}

これは、プロジェクト全体をサブモジュールとして使用しているときに機能しましたが、そのプロジェクトのライブラリモジュールのみを使用したい(そしてサンプルアプリを除外した)
phreakhead 2016

6

私もこの問題に直面していますが、次の手順に従います:-1)特定のフォルダー名ThirdPartyLibにmodule(Library)を追加します

この問題を解決するには、以下を追加するだけでなく、settings.gradleに移動します

project( ':')。projectDir = new File( 'ThirdPartyLib /')

:-モジュール名です...


3

このエラーを診断するには、すぐに端末にドロップするか、Android Studioに組み込まれた端末を使用します(下部のステータスバーからアクセスできます)。プロジェクトのメインディレクトリに移動します(ここでsettings.gradleが置か。

1.)settings.gradleサブプロジェクトが含まれていることを確認します。このようなもの。これにより、マルチプロジェクトビルドがライブラリサブプロジェクトを認識できるようになります。

include ':apps:App1', ':apps:App2', ':library:Lib1'

コロンの間のテキストはサブディレクトリです。

2.)次のgradleコマンドを実行して、Gradleがライブラリのタスクのリストを提供できるかどうかを確認します。settings.gradle定義では同じ修飾子を使用してください。これにより、ライブラリビルドスクリプトの問題が分離して明らかになります。

./gradlew :library:Lib1:tasks --info

3.)最後のステップの出力に「assembleDefault」タスクがリストされていることを確認します。それは確かにライブラリ内のAndroidライブラリのプラグインを含むされていることを確認しなかった場合build.gradle。このように一番上に。

apply plugin: 'com.android.library'

元の投稿者の質問に回答したことは知っていますが、回答はこの1年で進化したと思います。エラーには複数の理由があると思います。この解決フローは、さまざまな問題に遭遇した人を助けるはずだと思います。


3

settings.gradleファイルを確認してください。含まれているモジュールが見つからないか、別のディレクトリにある可能性があります。たとえば、以下の行ではsettings.gradle、gradleはcommon-libプロジェクトディレクトリ内のモジュールを検索します。

include ':common-lib'

見つからない場合は、このモジュールを見つけてプロジェクトにコピーするか、settings.gradleファイルでそのパスを参照できます。

include ':common-lib'
project(':common-lib').projectDir = new File('<path to your module i.e. C://Libraries/common-lib>') // 

0

私にとって(いくつかのコメントを参照)、問題はGradleがインポートされたライブラリのbuild.gradleを見つけられなかったことです。この構成は単純ですが、エラーメッセージは少し不可解です。たとえば、私はandroid-map-utilsプロジェクトを使用していて、次のようにこれらの2行を追加して、settings.gradleに含める必要がありました。

include ':android-map-utils'
project(':android-map-utils').projectDir = new File(settingsDir, '..\\..\\modules\\android-maps-utils-master\\library')

ライブラリのパスは、プロジェクトのsettings.gradleファイルに関連しています。次に、このようにアプリのbuild.gradleファイルの依存関係でそれを単に参照しました

...

    dependencies {
    ....
        compile project(':android-map-utils')
    ....

    }

一度に1つのモジュールをインポートし、コンパイルして確認することをお勧めします。


0

特定のノードモジュールを削除した後にこのエラーを見つけたとしたら、理想的には、build.gradle(Module:app)の下にライブラリが存在しないようにする必要があります。手動で削除して、プロジェクトを再度同期することができます。


0

私も同じ問題に直面し、問題は次のファイルのいくつかでライブラリーが欠落していることでした。

settings.gradle、app / build.gradle、package.json、MainApplication.java

ライブラリがreact-native-vector-iconsであるとすると、次のファイルで言及する必要があります。

依存関係セクションの下のapp / build.gradleファイルに以下を追加します:

プロジェクトのコンパイル( ':react-native-vector-icons')

androidフォルダーの下のsettings.gradleファイルに、以下を追加します。

include :: react-native-vector-icons 'project(':react-native-vector-icons ')。projectDir = new File(rootProject.projectDir、' ../node_modules/react-native-vector-icons/android ' )

MainApplication.javaに以下を追加します。

依存関係をインポートします。import com.oblador.vectoricons.VectorIconsPackage;

次に追加:getPackages()メソッドに新しいVectorIconsPackage()。


0

反応ネイティブの依存関係をいくつか削除することで問題は解決しました

これらの行を削除すると、問題は解決します。この行はrnpmリンクによって作成されますが、バグです。

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