Android Gradle模块依赖项

时间:2013-07-07 00:43:42

标签: android gradle

使用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'

2 个答案:

答案 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'