В настоящее время я использую Gradle Plugin для Eclipse (STS). Я пытаюсь получить некоторые пользовательские данные для настройки задачи. С демоном есть проблемы с чтением пользовательского ввода. Итак, я попытался использовать Groovy Pop up.Gradle: как получить пользовательский ввод
У меня есть одна задача, которая призвана строить и показывать всплывающее окно.
task getUserInfo << {
def sb = new SwingBuilder()
sb.frame(title: 'Info',
location: [400, 50],
pack: true,
show: true,
defaultCloseOperation: JFrame.EXIT_ON_CLOSE) {
gridLayout(columns: 2, rows: 4)
label('First name:')
textField(id: 'firstName')
label('Last name:')
textField(id: 'lastName')
button(text: 'Enter', actionPerformed: {
myGlobalVariable = "info: ${firstName.text} ${lastName.text}"
}
Кроме того, я создаю еще одну задачу: task deploy(dependsOn: getUserInput) { doLast {...} }
. В этой задаче я пытаюсь прочитать глобальную переменную, содержащую результат ввода пользователя. Но проблема в том, что Gradle продолжает задачу развертывания, не дожидаясь ввода.
Как я могу исправить это, чтобы читать ввод пользователя перед выполнением других задач?
Спасибо за любую помощь.
Попробуйте этот пример от Tim Roes. https://www.timroes.de/2014/01/19/using-password-prompts-with-gradle-build-files/ – Piohen