【问题标题】:Including and excluding source sets for different flavors in Android Studio在 Android Studio 中包含和排除不同风格的源集
【发布时间】:2018-05-21 13:48:54
【问题描述】:

在 Android Studio 项目中,我有不同的 java 模块,并希望根据产品风格编译它们(即 flavor1 中的 feature1feature2、feature3 flavor2 中)。还有一些通用代码,需要经常编译。
这是我的 build.gradle 的一部分:

productFlavors {
    flavor1 {
        sourceSets {
            main.java.srcDirs += [
                      'path_to_my_dir/feature1'
            ]
        }
    }
    flavor2 {
        sourceSets {
            main.java.srcDirs += [
                     'path_to_my_dir/feature2',
                     'path_to_my_dir/feature3'
            ]
        }
    }
}
sourceSets {
    main.java.srcDir 'path_to_my_dir/common'
}

问题在于所有功能都可以编译为任何风格
像这样的不同代码变体也不起作用:

flavor2 {
        main.java.excludes += [
                 'path_to_my_dir/feature1'
        ]
    }
}

关于如何使它工作的任何想法?

【问题讨论】:

标签: gradle android-gradle-plugin


【解决方案1】:

它的工作结构略有不同:

sourceSets {
    main {
        java.srcDir 'path_to_my_dir/common'
    }
    flavor1 {
        java.srcDirs += [
              'path_to_my_dir/feature1'
        ]
    }
    flavor2 {
        java.srcDirs += [
              'path_to_my_dir/feature2'
              'path_to_my_dir/feature3'
        ]
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-17
    • 2015-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多