5

For CIL / MSIL, I can write the code in a text editor and compile / decompile with ilasm / ildasm.

I can use Reflector to see the CIL generated by a .NET class.

In the Java world, javap -c shows the disassembled byte code.

How do I compile Java bytecode? (i.e. the Java equivalent of ilasm / ildasm).

Is there an IDE that supports Java bytecode?

Does the IDE support debugging i.e. single stepping / breakpoints etc.?

rbrayb
  • 46,440
  • 34
  • 114
  • 174
  • Also see http://stackoverflow.com/questions/1451016/fail-safe-way-of-round-tripping-jvm-byte-code-to-text-representation-and-back – James Moore Sep 16 '11 at 15:21

2 Answers2

5

Bytecode Outline plugin for Eclipse

to play with bytecode you can use ASM or BCEL

Take a look at org.apache.bcel.util.BCELifier, it takes a given class and converts it to a BCEL program (in Java, of course). It will show you how certain code is generated using BCEL.

IAdapter
  • 62,595
  • 73
  • 179
  • 242
4

Jasmin:

http://jasmin.sourceforge.net/

It's an assembler for Java bytecode. While an above poster pointed out that hand-coding Java bytecode may not be very useful, Jasmin has been used as a backend for compilers targeting the JVM as a runtime. Thus, your compiler can output Jasmin assembler instructions and then Jasmin converts them into Java classes.

Nate
  • 41
  • 1