错误:在Android Studio中找不到名称为“default”的配置

时间:2014-03-30 11:45:46

标签: android android-studio android-gradle android-volley

我正在使用排球库在android中执行网络操作。所以我试图在我的项目中添加这个库,该项目是在Android Studio和gradle系统中创建的。

我在项目中添加了凌空库但是当我与gradle同步时,我收到错误消息。我尝试了我在这里看到的所有答案,但没有对我有用。

错误消息:在Android Studio中找不到名称为“default”的配置

排球/的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'

        }
    }
}

应用程序/的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')
}

根/的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'

11 个答案:

答案 0 :(得分:96)

尝试:

git submodule init
git submodule update

答案 1 :(得分:68)

将库文件夹添加到项目的根位置,并将所有库文件复制到那里。对于ex YourProject / library然后同步它,休息对我来说似乎没问题。

答案 2 :(得分:22)

这可能是一种罕见的情况,但对我来说,settings.gradle中包含的库并不存在。

E.g。我在我的settings.gradle中有include ':libraries:Android-RateThisApp:library'

但是文件夹Android-RateThisApp为空。一旦我检查了这个子模块,gradle sync就会成功。

答案 3 :(得分:14)

如果要对多个项目使用相同的库文件夹,可以将其在gradle中引用到外部位置,如下所示:

settings.gradle:

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

在您的应用中 的build.gradle

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

答案 4 :(得分:6)

我也面临这个问题,但我遵循以下步骤: - 1)我将模块(库)添加到特定文件夹名称ThirdPartyLib

要解决此问题,请转到 settings.gradle ,而不仅仅是添加以下内容: -

项目(':')。projectDir =新文件('ThirdPartyLib /')

: - 是模块名称......

答案 5 :(得分:3)

要快速诊断此错误,请立即转到终端或使用Android Studio内置的终端(可在底部状态栏中访问)。切换到PROJECT的主目录(settings.gradle所在的位置)。

1。)检查以确保您的settings.gradle包含子项目。像这样的东西。这可确保您的多项目构建了解您的库子项目。

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

冒号之间的文本是子目录。

2。)运行以下gradle命令,看看Gradle是否可以为您提供库的任务列表。在settings.gradle定义中使用相同的限定符。这将单独揭示库构建脚本的问题。

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

3.确保上一步的输出列出了“assembleDefault”任务。如果它没有确保库在build.gradle中包含Android库插件。像这样在最顶层。

apply plugin: 'com.android.library'

我知道原始海报的问题已得到解答,但我相信答案在过去一年中有所发展,我认为错误有多种原因。我认为这个解决方案的流程可以帮助那些遇到各种问题的人。

答案 6 :(得分: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>') // 

答案 7 :(得分:0)

对我来说(根据我看过的一些评论),问题是gradle无法找到导入库的build.gradle。这种配置是直截了当的,但错误信息有点神秘。例如,我使用的是android-map-utils项目,并且必须将它包含在我的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')
    ....

    }

我建议一次导入一个模块,编译并检查它。

答案 8 :(得分:0)

如果假设您在删除某些节点模块后发现了此错误,则理想情况下不应该在build.gradle(Module:app)下显示该库。 可以手动删除它并再次同步项目。

答案 9 :(得分:0)

我也遇到了同样的问题,问题是以下某些文件中缺少库。

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

假设库是react-native-vector-icons,那么它应该在以下文件中提及;

在依赖项部分下的app / build.gradle文件中添加:

编译项目(':react-native-vector-icons')

在android文件夹下的settings.gradle文件中,添加以下内容:

包括':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()。

答案 10 :(得分:0)

消除几个反应本机依赖性即可解决问题

删除这些行即可解决问题。该行是由rnpm链接创建的,但存在错误。

<input type='file' name='image[]' accept='image/*' multiple/>