使用Gradle在Android上构建项目时出现问题。
我的项目结构如下:
root
settings.gradle
build.gradle
- Project 1 (android studio "module")
build.gradle
- Project 2 (android studio "module")
build.gradle
如果我选择项目1并编译,则可行 如果我选择项目2并编译,它也可以正常工作
现在,我想从项目1的项目2中获得依赖,以重用我的一些应用程序逻辑。
按照文档我尝试添加项目2 build.gradle
dependencies {
compile project(':Project1')
}
但它不起作用。
我的settings.gradle包含:
include ':Project1', ':Project2'
答案 0 :(得分:1)
您应该在库项目(project1)中应用插件 android-library :
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android-library'
android {
compileSdkVersion 17
}
关于制作图书馆项目的Gradle documentation链接。
答案 1 :(得分:0)
如果要重用Project1中的某些逻辑,则应创建一个库项目Project3-lib。将可重用代码移动到这个新项目,让Project1和Project2依赖它。
这是你可以做到的:
<强> settings.gradle 强>
include ':Project3-lib', ':Project1', ':Project2'
在 Project1 和 Project2 中添加新的lib项目
dependencies {
compile project(':Project3-lib')
}
在顶级gradle.build 文件中(这样您在所有项目构建文件中都不需要它)
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.6'
}
}
在新的 Project3-lib 项目中,你必须应用 android-library 插件而不是android插件
apply plugin: 'android-library'