Slackbot
08/10/2023, 9:35 AMVampire
08/10/2023, 9:38 AMIvan Alvarado
08/10/2023, 4:10 PM.toml
is pretty limited, but Vampire is correct. You can leverage the DSL to add logic: https://docs.gradle.org/current/userguide/platforms.html#sub:version-catalog-declaration
We support both in our project: .toml
and DSL. We use the DSL for the libraries which require some switch defined in gradle.properties
dependencyResolutionManagement {
versionCatalogs {
libs {
version('someDependency', getDependencyVersion())
library('someDependency', 'com.maven.coordinates.some-dependency', 'some-dependency').versionRef('someDependency')
}
}
}
def getDependencyVersion() {
def versionSwitch = Boolean.valueOf(getProperties().getOrDefault("dependency.switch", false)
return versionSwitch ? "2.0" : "1.0"
}