JBE - Java Bytecode Editor

JBE is a bytecode editor suitable for viewing and modifying java class files. It is built on top of the open-source jclasslib bytecode viewer by ej-technologies. For verification and exporting the class files, JBE uses the the Bytecode Engineering Library by Apache's Jakarta project.

  • JBE requires Java 1.5 to run.
  • It uses the standard mnemonics for JVM opcodes as instruction names. Jumps are absolute, labels are shown as line numbers. The cases/targets of tableswitch and lookupswitch instructions should be preceded by a tab or a space.
  • Class names should be written using the Java class file format conventions, so java.lang.String becomes java/lang/String
  • Type information is also written as they appear in class files (e.g. the descriptor I speficies an integer, [Ljava/lang/Thread; is an array of Threads, etc.).
  • To add a constant, method, interface or field, select the appropriate section in the left pane. A form for adding th appropriate attribute is displayed on the main pane.
  • To remove a constant, method, interface or a field, select it in the left pane. A delete button appears on the main pane.
  • To add or remove an exception select the method's exception table tab. There, a form is included for adding an exception. An exception can be removed via the delete button.
  • There is no global save, all changes are directly applied to the class file after adding/deleting/modifying attributes. To return to the original file, select the appropariate menu item or button ("Revert to original class file").

Download: Java Bytecode Editor 0.1.1

Changes from 0.1b:

  • fix for saving InvokeInterface instruction by Carl Rumachik

© Ando Saabas 2006
Email: ando (a t) cs.ioc.ee