Компилировать против нескольких версий библиотеки - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть набор исходных каталогов, каждый из которых содержит несколько взаимозависимых компонентов (каждый имеет набор компонентов и внутренних зависимостей). Каждый исходный каталог соответствует разной версии jar-файла, с которым нужно скомпилировать. Это можно было бы указать как что-то вроде

sourceSets {
    v1c1 { java.srcDir "src-v1/c1" }
    v1c2 { java.srcDir "src-v1/c2" }
    v2c1 { java.srcDir "src-v2/c1" }
    v2c2 { java.srcDir "src-v2/c2" }
}
configurations {
    v1c1Implementation "group:library:1.0"
    v1c2Implementation sourceSets.v1c1.output
    v2c1Implementation "group:library:2.0"
    v2c2Implementation sourceSets.v2c1.output
}

Это явно не поддерживаемый беспорядок, особенно с ростом количества версий. Я бы предпочел определить зависимости как что-то вроде

configurations {
    c1Implementation "group:library:$ver"
    c2Implementation sourceSets.c1.output
}

Это только определяет отношение внутри каждой версии, что намного более управляемо. Хотя это явно недействительный код. Есть ли способ заставить это, или что-то подобное, работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...