У меня есть пакет DOS script, который вызывает приложение java, которое взаимодействует с пользователем через пользовательский интерфейс консоли. Для аргумента, позвольте называть его runapp.bat, а его содержимое будет
java com.example.myApp
Если пакет script вызывается в консоли, все работает нормально. Однако, если script вызывается из диспетчера окон, вновь открытая консоль закрывается, как только приложение заканчивает выполнение. Я хочу, чтобы консоль оставалась открытой во всех случаях.
Я знаю следующие трюки:
-
добавьте команду
pauseв конце script. Это немного уродливо, если в командной строке вызываетсяrunapp.bat. -
создайте новую оболочку с помощью
cmd /K java com.example.myAppЭто лучшее решение, которое я нашел до сих пор, но оставляет дополнительную оболочку при вызове из командной строки, так что вызовexitфактически не закрывает оболочку.
Есть ли лучший способ?