Android Studio,NavDrawer和支持库问题

时间:2013-07-31 23:12:04

标签: android gradle android-studio android-support-library greendao

我在使用gradle在Android Studio项目中使用android支持库时遇到问题。 如果我将support-library添加为依赖项,我将收到“Error:Gradle:Execution failed for task':AppName:dexDebug'。 我做了一些研究,发现使用支持库和其他依赖项的问题也在使用支持库(greendao 1.3.0)。 我想在我的应用程序中使用NavDrawer,所以我必须使用这些支持库。 如果我删除了支持库,我当然会收到“android.support.v4.widget.DrawerLayout”的膨胀错误。

这里有人有想法吗?

我使用了两种依赖导入 编译文件('libs / android-support-v13.jar') 和 编译'com.android.support:support-v4:13.0.0' 在论坛中发现帖子的原因。但这也行不通。

感谢您的支持。

此致 海洋

2 个答案:

答案 0 :(得分:1)

如果您的其他依赖项也依赖于支持lib,则需要确保它们不使用本地依赖项(即嵌入jar文件)。您应始终使用

dependencies {
    compile 'com.android.support:support-v4:x.y.z'
}

而不是本地依赖项。确保所有依赖项都相同,Gradle会自动检测到所有内容都依赖于同一个库,并且只将它添加一次到dex。

答案 1 :(得分:0)

我试了但是我也收到了dex错误。 附上你可以看到我当前的gradle构建文件。

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

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.android.support:support-v4:13.0.0'
    compile 'com.google.android.gms:play-services:3.1.36'
    compile 'de.greenrobot:greendao:1.3.0'
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 18
    }

    sourceSets {
        main {
            java.srcDirs = ['src/main/java', 'src-gen/main/java']
        }
    }
}

src-gen文件夹用于我的greendao生成的类。 如果您需要更多信息,请与我们联系。

编辑: 我使用最新的greendao版本解决了它。补充:编译

 de.greenrobot:greendao:1.3.1

而不是编译

 de.greenrobot:greendao:1.3.0

现在可行。

此致 Marine_of_Hell