Проблема, которая возникает при запуске из графического интерфейса Java, это работает в фоновом режиме.
Таким образом, вы вообще не видите командную строку.
Чтобы обойти это, вам нужно запустить java.exe через «cmd.exe» И «start».
Я не знаю почему, но если вы вставите в начало команду «cmd / c start», она покажет командную строку при запуске.
Однако проблема с «запуском» заключается в том, что если в пути к приложению есть пробел
(который путь к Java Exe обычно имеет, как это в
C: \ Program Files \ Java \ jre6 \ bin \ java.exe или аналогичные),
затем запуск просто не удается с "не могу найти c: \ Program"
Таким образом, вы должны поместить кавычки в C: \ Program Files \ Java \ jre6 \ bin \ java.exe
Теперь начать жаловаться на параметры, которые вы передаете java.exe:
"Система не может найти файл -cp."
Выход из пробела в «Program Files» с обратной косой чертой также не работает.
Таким образом, идея состоит в том, чтобы не использовать пространство.
Создайте временный файл с расширением bat, а затем поместите в него команду с пробелами
и запустить летучую мышь.
Однако запуск летучей мыши через старт не завершается,
поэтому вы должны поставить «выход» в конце командного файла.
Это все еще кажется отвратительным.
Итак, в поисках альтернатив я обнаружил, что использование кавычек в кавычках в пространстве «Program Files» фактически работает с запуском.
В приведенном выше классе EXECUTE изменение строителя строки добавляет:
append( "cmd /C start \"Some title\" " ).
append( java.lang.System.getProperty( "java.home" ).replaceAll(" ", "\" \"") ).
append( java.io.File.separator ).
append( "bin" ).
append( java.io.File.separator ).
append( "java" ).
append( " " ).
append( new java.io.File( "." ).getAbsolutePath() ).
append( java.io.File.separator ).
append( CLASS_TO_BE_EXECUTED ).