Это в основном распространяется этот вопрос на Kotlin DSL вместо Groovy DSL:
Как работает решение Groovy DSL из
if (hasProperty('buildScan')) {
buildScan {
termsOfServiceUrl = 'https://gradle.com/terms-of-service'
termsOfServiceAgree = 'yes'
}
}
перевести на Kotlin DSL?
Проблема, с которой я работаю, состоит в том, что расширение "buildScan" или класс com.gradle.scan.plugin.BuildScanExtension
не могут использоваться статически, так как они присутствуют или отсутствуют, в зависимости от того, есть ли команда --scan
Строковый аргумент был предоставлен Gradle или нет.
Я пробовал
if (hasProperty("buildScan")) {
extensions.configure("buildScan") {
termsOfServiceUrl = "https://gradle.com/terms-of-service"
termsOfServiceAgree = "yes"
}
}
, но, как и ожидалось, termsOfServiceUrl
и termsOfServiceAgree
не разрешаются, однако я не знаю, какой синтаксис здесь использовать.