我已成功将ActionBarSherlock导入我的项目,并需要导入另外两个库:Sliding Layer和Crouton。我知道之前已经出现过类似的问题,但是我几乎尝试了所有的事情,每次都以一种我不得不重新启动的方式打破项目中的某些内容。
我的项目树看起来像:
MyProject/
+ app/
+ libraries/
+ actionbarsherlock/
+ crouton/
+ slidinglayer/
我将这两个库导入为模块(文件 - >导入模块)
我的setting.gradle文件看起来应该是:
include ":libraries:actionbarsherlock", ':Krypto', ':libraries:crouton', ':libraries:slidinglayer'
actionbarsherlock gradle:
buildscript {
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android-library'
dependencies {
compile files('libs/android-support-v4.jar')
}
android {
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 16
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
app gradle:
buildscript {
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
dependencies {
compile project(":libraries:actionbarsherlock")
}
android {
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 16
}
}
slidinglayer gradle:
apply plugin: 'android-library'
dependencies {
compile "com.android.support:support-v4:18.0.0"
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 4
targetSdkVersion 18
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
在crouton文件夹中没有gradle.build文件。应该怎么样? Theres只有java文件(没有资源)。
如何在crouton和滑动层库中正确设置依赖项?
答案 0 :(得分:5)
build.gradle for crouton
buildscript {
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android-library'
dependencies {
compile 'com.android.support:support-v4:18.0.0'
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 9
targetSdkVersion 17
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
}
}
}
并在您的app build.gradle中,更改
dependencies {
compile project(":libraries:actionbarsherlock")
}
到
dependencies {
compile project(":libraries:actionbarsherlock")
compile project(":libraries:crouton")
compile project(":libraries:slidinglayer")
}
并在Android Studio中再次导入
答案 1 :(得分:1)
我不知道如何解决您的问题,但当我在Gradle构建中遇到第三方库使用问题时,我通过以下方式解决了。
以下是我的项目结构。
GsonDemoProject
GsonDemo
建立
库
Android的支持,v4.jar
gson.jar
SRC
主要
的build.gradle
的build.gradle
settings.gradle
我编辑了位于build.gradle
目录中的src
文件。
dependencies {
compile files('libs/android-support-v4.jar','libs/gson.jar')
}
我将第三方库的引用放在dependencies
标签中,如上所述。在我的项目中libs
是放置库的目录。