바이트 코드 엔지니어링 라이브러리
바이트 코드 엔지니어링 라이브러리(Byte Code Engineering Library, BCEL)은 자바언어에서 생성하는 클래스 파일(바이트코드)를 분석하고 변경, 재조립하는 간편한 인터페이스를 제공하기 위해 만들어진 아파치 재단에서 후원하는 프로젝트중 하나이다. 이 프로젝트는 Markus Dahm에 의해 최초로 개발되었으나 2001년 9월 27일 아파치 소프트웨어 재단으로 이양되어 개발/운영되고 있다.
원저자 | Markus Dahm |
---|---|
개발자 | 아파치 소프트웨어 재단 |
안정화 버전 | 6.5.0
/ 2020년 6월 5일 |
저장소 | |
프로그래밍 언어 | 자바 |
운영 체제 | 크로스 플랫폼 |
종류 | 프로그래밍 라이브러리 |
라이선스 | 아파치 라이선스 2.0 |
웹사이트 | http://commons.apache.org/bcel |
BCEL은 현재 자바언어의 바이트코드에 대해서만 지원하고 있으며 바이트 코드를 사용하는 다른 언어(닷넷이나 파이썬 등)은 지원하지 않는다.
용도
편집BCEL은 이미 생성된 바이트코드를 읽어들여 그 구조를 분석하고 조작하며 새로 생성할 수 있도록 도와준다. 이러한 기능은 자바 가상 머신(JVM)의 구조와 자바 클래스 파일에 대한 이해를 높이는 데도 도움이 된다.
또한 BCEL은 그 특징으로 인해 컴파일러나 최적화 도구(Optimizer), 난독화 도구(Obfuscator), 코드 생성기, 분석 툴 등에 사용된다.