0

我目前正在使用 Gradle Plugin for Eclipse (STS)。我正在尝试获取一些用户输入来配置任务。使用守护程序,读取用户输入时会出现问题。所以,我尝试使用 Groovy Pop up。

我有一项任务是调用构建和显示弹出窗口。

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 无需等待我的输入就继续执行部署任务。

在执行其他任务之前如何解决这个问题以读取用户输入?

谢谢你的帮助。

4

1 回答 1

0

这确实是一个 Swing 问题,即如何创建模态对话框。从对话框中获取用户的输入有一个例子。

于 2013-06-23T07:32:50.987 回答