我有一个调用Ant exec
任务的需求,需要接受控制台标准输入。但是,我无法找到一种方法来实现这一点。在运行时,stdin文件句柄似乎关闭了控制台输入。
可以使用属性input
和inputstring
指定输入。但是,我需要在控制台提示用户输入。
我该怎么做呢?
从任务的文档中可以看到:
请注意,您无法与分叉的程序进行交互,唯一发送输入的方法是通过input和inputstring属性。还要注意,自Ant 1.6以来,任何尝试在分叉的程序中读取输入的尝试都将收到EOF(-1)。这是从Ant 1.5开始的变化,以前这样的尝试会被阻塞。
您可以尝试使用input-task在ant-buildfile中提示输入,并通过exec的inputstring属性传递这些输入。目前我想不出更好的选项。