Byte Code Engineering Library
Это заготовка статьи. Помогите Википедии, дополнив её. |
Byte Code Engineering Library (сокр. BCEL) — проект Apache Foundation, подпроект Jakarta, представляющий собой API для декомпиляции, изменения и повторной компиляции файлов классов Java (состоящих из байт-кодов). Проект изначально был задуман и разработан Маркусом Дамом, а впоследствии — безвозмездно передан Apache Jakarta foundation 27 октября 2001 года. На данный момент Java-ориентирован и не поддерживает байт-коды .NET, Python и т. д.
Использование
BCEL - простая библиотека, которая разбирает Java-класс через его API как объекты конструкции (в отличие от обычных дизассемблеров). Эти объекты поддерживают операции по изменению байт-кодов, а за одно и генерацию новых (вставкой их в существующий код или с помощью генерации нового класса целиком).