Сохраните что-нибудь в JAR - PullRequest
3 голосов
/ 29 ноября 2010

У меня есть Java-приложение, которое должно сохранять и загружать пользовательские настройки. Я хочу сохранить их в файле, расположенном в файле JAR, как мне этого добиться?

Ответы [ 4 ]

5 голосов
/ 29 ноября 2010

Это невозможно.Скорее рассмотрите использование java.util.prefs.Preferences, которое предназначено именно для этой цели.Смотри также это маленькое руководство .

1 голос
/ 29 ноября 2010

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

1 голос
/ 29 ноября 2010

Это не способ хранить предпочтения, как говорили другие.

Если у вас есть , чтобы сделать это таким образом, то:

  1. Найдите JAR из кода: Как получить путь к работающему файлу JAR?

  2. Разархивировать содержимое во временную папку

  3. Изменить во временной папке

  4. Jar временная папка для нового файла JAR.

1 голос
/ 29 ноября 2010

Это не разумный курс действий.

Файл JAR - это, в основном, файл ZIP. Чтобы переписать его содержимое, вам нужно извлечь его полностью, внести необходимые изменения, а затем записать их в новый файл, который заменит старый.

Если программа, которая собирается сделать это, та же самая, что и содержащаяся в файле JAR, это становится невозможным, поскольку файл защищен от записи во время выполнения.

Вам бы лучше было хранить свою конфигурацию в другом месте.

...