我需要根据Gradle版本使用不同的Gradle插件版本。如何比较Gradle中的版本?变量gradle.gradleVersion是一个字符串,不能很好地进行比较。如果次要版本只有一个数字,则以下内容不起作用。
buildscript {
dependencies {
def ver = gradle.gradleVersion >= '2.12' ? '+' : '1.5.+'
classpath group: 'de.inetsoftware', name: 'SetupBuilder', version: ver
}
}
VersionNumber类就是诀窍:
buildscript {
dependencies {
def ver = VersionNumber.parse( gradle.gradleVersion ) >= VersionNumber.parse( '2.12' ) ? '+' : '1.5.+'
classpath group: 'de.inetsoftware', name: 'SetupBuilder', version: ver
}
}
注意:VersionNumber
在Gradle 7中已弃用,并将从Gradle 8中删除。没有公共替换(它从来没有打算在Gradle内部代码之外使用)。请参阅文档。
https://docs.gradle.org/current/javadoc/org/gradle/util/VersionNumber.html