Ачесс трансформеры

236
4
22
Добрый вечер всем. Нужна помощь с AT. Как его использовать - я знаю, но возник частный случай: мне нужно снять private модификатор с поля из класса FML. Маппингов на него нет (да и откуда будут, если это не minecraft, а Forge), а при юзе обычного названия поля - снять модификатор не удаётся. В данном случае мне нужно снять приватный доступ с поля modLanguageData в классе cpw.mods.fml.common.registry.LanguageRegistry (Если что - мне просто требуется узнать, используется ли каким-то модом определённый язык при определённом событии). Всё что пришло на ум - применить ASM-трансформер и в нём найти филду, сетнув ей access = 1. Но не всё так просто - компилятору совершенно похрену на мой трансформер (он же только в рантейме действует) и следовательно скомпилировать код я не могу. Как мне обмануть IDEA, чтобы она думала, что поле публичное? Если же есть какой-то другой способ проверить использование модами определённого языкового ключа - то подскажите как (я по крайней мере не нашёл)

Сразу попрошу, рефлексию - не предлагать. Меня интересует либо помощь с "обманом" idea на ложно-публичный модификатор доступа либо другой вариант проверки наличия языкового ключа (речь об en_US, ru_RU и т.д.)


Неактуально!
 
Последнее редактирование:
7,099
324
1,510
Сверху