Почему Gradle не передает аргументы времени выполнения в Groovy?
Gradle 2.14 и Groovy 2.4.7 здесь. У меня есть следующие Groovy:
@Slf4j
class Driver {
static void main(String[] args) {
log.info("Fizz prop value is: ${System.properties['fizz']}.")
}
}
Я использую плагин Gradle Application. Когда я бегу:
./gradlew run -Pfizz=buzz
Я получаю следующий вывод консоли:
[main] ИНФОРМАЦИЯ com.me.myapp.Driver - Значение Fizz prop равно: null.
Почему мое приложение считает fizz
свойство null
когда я передаю его значение как buzz
в командной строке?
2 ответа
Решение
Вы передаете это с -P
которые являются свойствами для gradle
Попробуйте передать это с -D
Попробуйте без System.properties и передачи -Pfizz=buzz:
log.info("Fizz prop value is: ${fizz}.")