我有一组源目录,每个目录包含多个相互依赖的组件(每个都有一组组件和内部依赖项)。每个源目录对应于要针对其进行编译的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
}
这仅指定每个版本内部的关系,该关系更易于管理。不过,这显然不是有效的代码。有什么办法可以使它或类似的东西起作用?