Мне нужно изменить строковую константу в развернутой Java-программе, то есть значение внутри скомпилированного.class
-файлы. Его можно перезапустить, но не так просто перекомпилировать (, хотя это неудобный вариант, если этот вопрос не дает ответов ). Это возможно?
Обновление :Я только что посмотрел файл с помощью шестнадцатеричного редактора, и похоже, что я могу легко изменить там строку. Будет ли это работать, то есть не сделает ли это недействительной какую-то подпись файла? Старая и новая строки являются буквенно-цифровыми и при необходимости могут иметь одинаковую длину.
Обновление 2 :Исправил. Поскольку конкретный класс, который мне нужно было изменить, очень мал и не изменился в новой версии проекта, я мог просто скомпилировать его и взять оттуда новый класс. Тем не менее, заинтересован в ответе, который не требует компиляции, в образовательных целях.