@Wan-Derer
Зобанели на Хабре, волки́ ;((

Может ли приложение менять файлы внутри JAR?

Всем привет! Такой вопрос. Вот есть у меня работающее приложение в виде JAR.
JAR - это по сути архив, если его раскрыть, увидим там файлы, папки и пр.
Вопрос: а может ли работающее JAR-приложение изменить файл внутри себя, например, текстовый файл? И если да, как его адресовать?
  • Вопрос задан
  • 108 просмотров
Решения вопроса 2
xez
@xez Куратор тега Java
TL Junior Roo
Изменяемые ресурсы лучше хранить где-то отдельно.
Путь до ресурсов можно объявить с помощью системных переменных или конфиг файла.
Ответ написан
mayton2019
@mayton2019 Куратор тега Java
Bigdata Engineer
Вопрос состоит из нескольких частей.
1) Как работает в Java ClassLoader (это сами почитаете). Сколько в Java приложении ClassLoader-ов.
2) Какая на самом деле цель? Изменение jar-файла на ходу скорее всего не повлияет на работу приложения в рантайме. При следующем запуске - да. Но проблема которую вы решаете должна решаться по другому. Изменение оригинального артифакта - рассматривается с точки зрения безопасности очень плохо. Разработчики критически важных приложений снабжают jar-файлы электронными подписями и таким образом измченить артифакт не сломав подписи - невозможно. Просто имейте это в виду.
3) Существует много технологий внесения изменения в оригинальную работу приложения. Самое лучшее - это - писать плагины если есть возможность. Или выйти на контакт с разработчиком и получить сорцы и сделать свой собственный форк с нужными фичами.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы