바이트 코드 엔지니어링 라이브러리

바이트 코드 엔지니어링 라이브러리(, BCEL)은 자바언어에서 생성하는 클래스 파일(바이트코드)를 분석하고 변경, 재조립하는 간편한 인터페이스를 제공하기 위해 만들어진 아파치 재단에서 후원하는 프로젝트중 하나이다. 이 프로젝트는 Markus Dahm에 의해 최초로 개발되었으나 2001년 9월 27일 아파치 소프트웨어 재단으로 이양되어 개발/운영되고 있다.

BCEL은 현재 자바언어의 바이트코드에 대해서만 지원하고 있으며 바이트 코드를 사용하는 다른 언어(닷넷이나 파이썬 등)은 지원하지 않는다.

용도 
BCEL은 이미 생성된 바이트코드를 읽어들여 그 구조를 분석하고 조작하며 새로 생성할 수 있도록 도와준다. 이러한 기능은 자바 가상 머신(JVM)의 구조와 자바 클래스 파일에 대한 이해를 높이는 데도 도움이 된다.

또한 BCEL은 그 특징으로 인해 컴파일러나 최적화 도구(Optimizer), 난독화 도구(Obfuscator), 코드 생성기, 분석 툴 등에 사용된다.

같이 보기 
 Javassist
 AspectJ

외부 링크 
  Byte Code Engineering Library 공식 홈페이지

아파치 소프트웨어 재단 프로젝트