在android studio 0.4.2中设置actionbar sherlock

时间:2014-02-06 09:55:59

标签: android eclipse actionbarsherlock android-studio

我正在使用actionbrsherlock库开发一个android项目。在android studio中添加actionbarsherlock库后,我的目录结构是

所有MyApplication
  - app
- gradle
  - 图书馆
   - actionbarsherlock(图书馆项目)
   的build.gradle
   setting.gradle

的build.gradle

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.7.+'
        compile project(":libraries:actionbarsherlock")
        }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

setting.build

  

包括':app'
  包括':libraries:actionbarsherlock'

运行以下错误后

  

评估根项目“MyApplication”时出现问题。 >没有   签名方法:   org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile()   适用于参数类型:   (org.gradle.api.internal.project.DefaultProject_Decorated)值:   [project':libraries:actionbarsherlock']可能的解决方案:   模块(java.lang.Object中)

更新:

我将我的android工作室升级到0.4.4。并更改build.gradle文件。可以在github上找到整个设置https://github.com/manishpathak99/AndroidStudio

1 个答案:

答案 0 :(得分:2)

首先,我强烈建议您将工作室升级到版本0.4.3,因为0.4.2版本中存在一些与依赖项相关的问题。

答案:

您正在build.gradle文件中的错误位置添加模块依赖项。您模块的 build.gradle 文件应如下所示:

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

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

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

        debug {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    // Your all module dependencies should be defined here
    compile project(":libraries:actionbarsherlock")

}

推荐解决方案:

ActionbarSherlock库具有maven依赖性,在这种情况下,无需下载整个库并将其作为模块添加到项目中,而是在模块的build.gradle文件中添加maven gradle依赖项,如

dependencies {
       compile 'com.actionbarsherlock:actionbarsherlock-i18n:4.4.0@aar'
}

就是这样。