Ideaがバッチ構成をWindowsの純粋なcmd.exeと比較してどのように違いますか?Intellij stdin rederection
Javaアプリケーションを実行するためのバッチ設定を作成します。私はそれを実行すると、それはアイデアコンソールで私の結果sciptを表示します:
cmd.exe /c java -classpath C:\app;C:\app\libs.jar App < input.txt
標準入力からこのアプリケーション待機入力。この行はそれを実行し、input.txtファイルから読み込む必要があります。しかし、それは入力を待って読むのinsted。アイデアコンソールで^ Dキーを押すと、入力がありませんでした。
私はこのアイデアコンソールからWindows cmdに直接起動スクリプトを貼り付けると、すべてが予想どおりに実行され、アプリケーションがファイルを読み込んで正しく終了します。
私はstackoverflowの答えを読んで、外部ツールのアイデアのオプションを試してみてください。私はそれを実行しようとします:
java -classpath C:\app;C:\app\libs.jar App < input.txt
しかし、まだ入力を待っています。私は、引数としてファイル名を渡した場合だけでなく、Javaアプリケーションの実行構成としては、入力待ち:
"C:\Program Files\Java\jdk1.8.0_92\bin\java"
-Didea.launcher.port=7533
"-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IDEA\bin"
-Dfile.encoding=UTF-8
-classpath "long..long..classpath"
com.intellij.rt.execution.application.AppMain Col < input.txt
私は標準入力rederectionについてのいくつかのリンク(one、two、three)を見つけたと方法がないように思えますこれをコードからのアイデアのみから行うこと。 ありがとうございました!
私が見つけた唯一の方法は、引数として渡すファイル名でなど主要なものの先頭に似追加: '(args.length> 1)System.setIn(new FileInputStream(args [1]));' –
@ useruser272933 'System.setIn'については決して知りませんでした。あなたが答えとしてそれを書くことができれば、私は確かにそれをupvoteだろう。 –
は答えとして書きました!) –