Java bytecode reader & writer, maybe a rust implementation for ASM
There are some similar projects in GitHub, but they didn't actually implement all JVM Bytecode format, and also not implements all ASM nodes/features in rust. So I want to build this library to fully read and write Java bytecode information.
This project supports much newer LTS Java version(Java 21 currently) than other rust implementations. Only supports
asm-tree
api currently, not supports visitor api because Tree API is much easier to use than visitor api.
- Implement Read Java class file with JVMS format
- Implement Write Java class file with JVMS format
- WIP, ASM nodes reader
- Constant pool
- Attributes
- Class / Field / Method metadata
- Method instructions
- Method frames
- Method local variables / stacks / try-catches
- Not Start, Nodes writer
- Not Start, Implement ASM features (eg. auto calculate frame/stack etc.)
Some similar projects:
- rjvm
- read jvm bytecode and run it in a rust vm
- support JVM7
- jvm-assembler
- Ka-Pi
- cfsp