簡體   English   中英

System.in輸入,Java但具有apache ant

[英]System.in input, java but with apache ant

我以交互方式添加了一些system.in輸入(用戶輸入)。 我已經創建了可執行jar,並且正在使用apache ant來編譯和運行程序。 當我使用java -jar jarfile.jar執行該程序時,該程序可以很好地進行交互,並通過緩沖的讀取器system.in接收用戶輸入,但是當我通過ap ant ant by ant run運行它時,在獲取第一個輸入后它將掛起。

為什么用apache ant,它不使用System.in通過鍵盤鍵入的輸入?

我是否必須在apache ant的運行目標Java任務中添加一些內容?

不允許從任務讀取控制台輸入。

但是您可以使用ant從用戶那里獲取控制台輸入,並將其傳遞給Java程序的命令行參數。

以下是示例ant腳本,該腳本正在從用戶處獲取輸入並將其傳遞給Java程序。 Java程序正在打印它。

螞蟻腳本:

<project name="Testing" basedir="../bin" default="run">
  <target name ="run">
    <property name="name" value="Test"/>
    <input message="Enter your Name :" addproperty="inputvalue"  defaultvalue="n" />
    <echo message="${inputvalue}"/>
        <java classname="${name}" failonerror="true" dir="${basedir}" spawn="false" fork="false"  >
        <classpath>
            <pathelement location="${basedir}" />
        </classpath>
        <arg value="${inputvalue}"/>
    </java>
  </target>
</project>

Java程序:

public class Test {

public static void main(String[] args) throws IOException {

        System.out.println("Hello " + args[0]);  
}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM