как перезапустить Java-приложение, запомнив его аргументы командной строки
==========================================================================

У меня есть Java-приложение. Это можно запустить с помощью пары флагов командной строки. Я хочу предоставить возможность «перезапустить» приложение пользователем.

В настоящее время мы сохраняем аргументы в контрольном файле, читаем его при перезапуске приложения. Каков наилучший способ перезапустить приложение - как я могу сохранить аргументы командной строки?

 вы можете получить Classpath, Bootclasspath и т. Д.



 набор аргументов довольно фиксированный, подумайте над написанием небольшого пакетного или командного файла сценария, который ничего не делает, кроме вызова java с этим набором аргументов.

Если вы просто хотите запустить его один раз с аргументами, а затем, если вы перезапустите приложение без аргументов, хотите, чтобы оно использовало аргументы из предыдущего вызова, сделайте что-то вроде этого:

Sidenote: для простоты я использовал повторно`args`, Для лучшего кода, если необходимо, скопируйте полученные или сохраненные параметры в другую структуру данных, другой массив, экземпляр Properties, ...



 если вы действительно хотите сделать это кроссплатформенной ОС. Затем вы должны предоставить стартовые скрипты: оболочку для Linux, например OS / bat для Windows, эти скрипты устанавливают путь к классам и аргументы.

Я не думаю, что создание кнопки «перезапустить» в приложении является мудрым решением, но если вы хотите что-то вроде «перезапуска затмения», вам следует взглянуть на RuntimeMXBean, который может получить загрузку classpath для вас.



пуска?

Вам нужно будет реализовать`Serializable` интерфейс в`"CommandLineParams"` класс, чтобы сделать это.

Я думаю, что это самый структурированный способ выполнить то, что вы пытаетесь сделать.



вызвать новое использование

закрыть текущий используя

Здесь вы не столкнетесь с проблемой сохранения арг

[Вот](http://www.java-tips.org/java-se-tips/java.lang/how-to-execute-a-command-from-code.html) пример для вызова команд из Java-приложения