Пакетный скрипт, запускающий связанное приложение javafx, не показывает выходных данных

У меня есть очень простой пакетный файл сценария с этой строкой:

echo "Welcome to my script"
start "Title of my program" /wait /b "C:\Program Files (x86)\path_to_my_program\MyProgram.exe" %1 %2 %3 %4 %5

Скрипт просто получает несколько аргументов (до пяти) и передает их моему приложению. Приложение выполняет некоторые действия с этими параметрами и сохраняет их в каком-либо файле.

Все работает хорошо, за исключением того, что любой вывод в моем приложении, сделанный с помощью System.out.println(), не отображается в доке команд Windows. Приложение самоупаковывается JavaFx Bundle. Пожалуйста, любые советы будут оценены.

P.S. Я вижу вывод, созданный скриптом (echo). Я не вижу вывода из приложения ни из stdout, ни из logback.


person Evgeniy Mishustin    schedule 25.07.2017    source источник
comment
Связано. Я предполагаю, что вы не можете сделать очень много ... exe не будет выводить какие-либо данные в консоль. В связанном вопросе отмечается, что в файле есть вывод, если он перенаправлен. Если у вас есть exe, вы также можете заглянуть в папку приложения, которая у вас будет там, если она связана с javafx, которая должна содержать MyProgram.jar, и начать ее с аргументами.   -  person geisterfurz007    schedule 25.07.2017
comment
Вы должны использовать %ProgramFiles(x86)% вместо C:\Program Files (x86) и %* (все аргументы) вместо %1 %2 %3 %4 %5. Но даже если ваше связанное приложение JavaFX выводит что-то на stdout или stderr, вы не увидите этого в своей командной строке, используя команду start для выполнения приложения как отдельного процесса в < b>фон из-за использования дополнительной опции /b. Запустите в окне командной строки start /? для справки по этой команде и call /? для справки по %* и посмотрите на Windows Переменные среды.   -  person Mofi    schedule 25.07.2017