android - 如何使用 gradle 构建 Android 树

标签 android gradle android-gradle-plugin

cmake 最引人注目的功能之一是树外构建范例,它使人们能够将项目的变体构建到单独的文件夹中,从而可以更快地在构建配置之间切换。

android+gradle中有这样的机制吗?理想情况下,不会在源代码树中创建或修改单个文件。

编辑 - 我所说的 out of tree 是这样的:

我的源文件夹看起来像这样:

/work/project/build.gradle
/work/project/src/...
/work/project/res/...       

当我运行 gradle build 时,我最终得到如下新文件夹:

/work/project/.gradle/...
/work/project/build/..
/work/project/res/...       

我想使用 gradle 构建项目,以便新文件夹和生成的文件位于 project 之外的文件夹中,例如:

/work/build-project/.gradle/...
/work/build-project/build/..
/work/build-project/res/...       

关于其背后的哲学,这是一个很好的发现:http://voices.canonical.com/jussi.pakkanen/2013/04/16/why-you-should-consider-using-separate-build-directories/

最佳答案

您必须添加到根项目的 build.gradle 文件中:

allprojects {
  buildDir = "/external/path/${rootProject.name}/${project.name}"
}

关于android - 如何使用 gradle 构建 Android 树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27133125/

相关文章:

java - 在 HTTP POST 中设置参数

java - 我使用 Glide 库将图像加载到 imageView 中,但我不知道如何将图像缩放为可缩放

java - 使用Gradle将外部配置文件添加到jar

android - android studio 中的 Kotlin Gradle 插件问题

android-studio - Android Studio 错误无法建立应用插件 com.android.application

android - Android数据绑定(bind)与Guava冲突导致ProGuard报错

android - 无法为项目启用 DataBinging

android - 如何获得 1 :1 pixels on android emulator?

android - Mapbox - LostLocationEngine 解析失败

android - Jetpack Compose 中的主页和身份验证导航流程