Как автоматически принять Gradle ToS для `build --scan` и все же запустить сборку без сканирования? - PullRequest
0 голосов
/ 04 октября 2018

Я использую Gradle 4.6, который позволяет мне запускать сборки сканов , используя опцию --scan, без необходимости явного применения или загрузки дополнительных плагинов, что замечательно.Однако это вынуждает меня добавить buildScan Условия предоставления услуг в мой файл build.gradle.

примерно так:

buildScan {
    termsOfServiceUrl = 'https://gradle.com/terms-of-service'
    termsOfServiceAgree = 'yes'
}

Когда я запускаю впоследствии gradle build без опции --scan я получаю следующее сообщение об ошибке:

> Could not find method buildScan() for arguments…

Мне не нужно изменять файл build.gradle каждый раз, когда я хочу / не хочу сканировать.Я не хочу применять плагин явно (проблемы с брандмауэром), и у меня нет возможности принять Условия использования в командной строке, которые я также видел документально.

Может кто-нибудь сказать мнечто я делаю не так?

Этот вопрос отформатирован как цитата, потому что его уже задавали на форумах Gradle .Но это осталось без ответа.Я использую Gradle 4.10.2 и проблема все еще актуальна.Я решил обратить больше внимания на эту проблему здесь.

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Просто проверьте наличие buildScan

if (hasProperty('buildScan')) {
    buildScan {
        termsOfServiceUrl = 'https://gradle.com/terms-of-service'
        termsOfServiceAgree = 'yes'
    }
}
0 голосов
/ 04 октября 2018

Возможно, это не хорошее или правильное решение, но есть один обходной путь: используйте try / catch, чтобы проглотить ошибку, что-то вроде:

try {
    buildScan {
        termsOfServiceUrl = 'https://gradle.com/terms-of-service'
        termsOfServiceAgree = 'yes'
    }
} catch (MissingMethodException e){
   // This isn't the exception you're looking for
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...