これはできますが、それは少し関係しています。 input
タスクには、自分が望むことを簡単に行うためのオプションはありません。
ただし、入力ハンドラを指定すると、Ant 1.7以降では、input
タスクの出力(および入力)を制御できます。 Antにはいくつかの入力ハンドラが付属しています。たとえば、入力した内容を画面にエコーしない安全な入力用のハンドラです。必要に応じて、独自の入力ハンドラを書くことができます。こうすることで、入力と出力がどのように見えるかを完全に制御することができます。
入力ハンドラを書き込むには、InputHandler
インターフェイスを実装するクラスを作成する必要があります。 AntのソースコードをダウンロードしてDefaultInputHandler
を見て、独自のバージョンを作成して、必要に応じて修正することをお勧めします。 Antのv1.8.3のソースでは、迅速かつ入力は次のように実装されています。私はそれを試していないが、変更print
へprintln
は良いアイデアだと思い
r = new BufferedReader(new InputStreamReader(getInputStream()));
do {
System.err.println(prompt);
System.err.flush();
try {
String input = r.readLine();
request.setInput(input);
} catch (IOException e) {
throw new BuildException("Failed to read input from"
+ " Console.", e);
}
} while (!request.isInputValid());
。
完了したら、classname
と(例えば)classpath
のパラメータを使用して、Antのinput
タスクをコンパイル済み入力ハンドラに向けることができます。
[antのカスタムタスクの出力を変更するにはどうすればいいですか?](http://stackoverflow.com/questions/9359062/how-to-change-ants-custom-task-output) –
忍耐強く応答を待ちます。必要ならば元の質問を編集してください。二度目に人を悩ますのは投稿しないでください –
@ MarkO'Connorいいえ、私の意見では親戚ですが、別の質問です。これらの質問にも同様の解決策があるかもしれませんが、そうでないかもしれません。 は「ネイティブ」なAntタスクであり、ソリューションはソースコードを編集することなく構成することができます。 – Sergey