Ошибка SourceSets студии Android: тот же файл/папка

Я создаю 2 варианта в своем проекте, и у этих вариантов есть общий код. Раньше это работало хорошо, но в последней версии Android Studio и Gradle я получаю эту ошибку.

SourceSets 'seta' and 'main' use the same file/folder for 'java': .../src/main/java

Это то, что у меня есть в gradle.build

productFlavors {
    seta {
        packageName "com.test.seta"
        versionCode 4
        versionName "2.0"
    }

    setb {
        packageName "com.test.setb"
        versionCode 2
        versionName "1.6"
    }
}

sourceSets {
    seta {
        java.srcDirs = ['src/main/java', 'src/seta/java']
        res.srcDirs = ['src/main/res', 'src/seta/res']
        assets.srcDirs = ['src/main/assets', 'src/seta/assets']
    }

    setb {
        java.srcDirs = ['src/main/java', 'src/setb/java']
        res.srcDirs = ['src/main/res', 'src/setb/res']
        assets.srcDirs = ['src/main/assets', 'src/setb/assets']
    }

}

person Elyess Abouda    schedule 24.03.2014    source источник
comment
используйте вкусовые измерения. работает как по волшебству!   -  person dangalg    schedule 13.02.2015
comment
ищу демонстрацию вкусов Android Studio goo.gl/5NSnEM   -  person nitesh    schedule 19.12.2015


Ответы (1)


В исходном наборе отдельного варианта вам не нужно указывать основной исходный набор. Вы можете поместить общий код в src/main, и он будет выбран без необходимости явно ссылаться на него из других вариантов.

Я не уверен, как это работало раньше.

Если вы удалите это, вам на самом деле вообще не нужен блок sourceSets — по умолчанию общий код помещается в src/main, а специфичный код — в src/<. i>название-аромата, например, как вы уже его настроили.

person Scott Barta    schedule 24.03.2014
comment
относится ли это также к библиотечным проектам? У меня возникла проблема, когда при определении варианта для проекта библиотеки основное приложение не получает ресурсы из проекта библиотеки. Я использую каноническую структуру каталогов. - person andreimarinescu; 16.01.2015
comment
@andreimarinescu, я бы порекомендовал начать новый вопрос с более подробной информацией о том, что вы делаете. - person Scott Barta; 16.01.2015
comment
Привет, Скотт, мне не хватало варианта defaultPublishConfig и истинных утверждений publishNonDefault в моем файле библиотеки gradle. Спасибо, в любом случае! - person andreimarinescu; 21.01.2015
comment
@ScottBarta Возможно ли иметь проект Android без папки модуля приложения в студии Android? Вот мой вопрос SO - stackoverflow.com/questions/33755292/ - person Scorpion; 17.11.2015
comment
@ScottBarta Я удалил папку приложения и создал структуру папок, такую ​​​​как Eclipse в студии Android, но я застрял на создании gradle, так как сейчас у меня нет опции Sync Gradle .. - person Scorpion; 17.11.2015