1

我在使用 Gradle 在 Android 上构建项目时遇到问题。

我有一个项目结构如下:

root
 settings.gradle
 build.gradle

   - Project 1 (android studio "module")
      build.gradle

   - Project 2 (android studio "module")
      build.gradle

如果我选择项目 1 并编译,它可以工作 如果我选择项目 2 并编译,它也可以工作

现在,我希望项目 2 依赖于项目 1,以重用我的一些应用程序逻辑。

按照文档,我尝试在项目 2 build.gradle 中添加

dependencies {
    compile project(':Project1')
}

但它不起作用。

我的 settings.gradle 包含:

include ':Project1', ':Project2'
4

2 回答 2

1

您应该在您的库项目 (project1) 中应用插件android-library :

buildscript {
  repositories {
    mavenCentral()
  }

  dependencies {
    classpath 'com.android.tools.build:gradle:0.5.+'
  }
}

apply plugin: 'android-library'

android {
  compileSdkVersion 17
}

链接到有关制作库项目的Gradle 文档。

于 2013-08-06T17:48:00.950 回答
0

如果你想重用 Project1 中的一些逻辑,你应该创建一个库项目 Project3-lib。将您的可重用代码移至这个新项目,并让 Project1 和 Project2 依赖它。

您可以这样做:

设置.gradle

include ':Project3-lib', ':Project1', ':Project2'

在您的Project1Project2中,您添加新的 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'
于 2013-08-22T08:06:20.420 回答