zxh0 / Classpy
Licence: mit
GUI tool for investigating Java class files
Stars: ✭ 854
Projects that are alternatives of or similar to Classpy
jvm
Pure Rust implementation of the JVM 7 specification
Stars: ✭ 27 (-96.84%)
Mutual labels: jvm, wasm
wasm.cljc
Spec compliant WebAssembly compiler, decompiler, and generator
Stars: ✭ 178 (-79.16%)
Mutual labels: jvm, wasm
Asmble
Compile WebAssembly to JVM and other WASM tools
Stars: ✭ 466 (-45.43%)
Mutual labels: wasm, jvm
wasm2kt
Web Assembly to Kotlin and Java converter. Allows to compile a C or C++ program/library, and generate a Kotlin or Java program/library.
Stars: ✭ 20 (-97.66%)
Mutual labels: jvm, wasm
Wasm2kt
Web Assembly to Kotlin and Java converter. Allows to compile a C or C++ program/library, and generate a Kotlin or Java program/library.
Stars: ✭ 18 (-97.89%)
Mutual labels: wasm, jvm
Skylight
A tutorial wayland based window manager based off Wayland McWayface
Stars: ✭ 26 (-96.96%)
Mutual labels: jvm
Token Core Ios
a blockchain private key management library on iOS
Stars: ✭ 850 (-0.47%)
Mutual labels: bitcoin
Zemeroth
😠⚔️😈 A minimalistic 2D turn-based tactical game in Rust
Stars: ✭ 940 (+10.07%)
Mutual labels: wasm
Crypto Supplies
Cryptocurrency circulating, maximum and total supplies
Stars: ✭ 26 (-96.96%)
Mutual labels: bitcoin
Raspibolt
Bitcoin & Lightning full node on a Raspberry Pi
Stars: ✭ 842 (-1.41%)
Mutual labels: bitcoin
Warren
🐇 Kotlin/JVM, tested, IRC v3.2 client state management and observing
Stars: ✭ 8 (-99.06%)
Mutual labels: jvm
Multy Back
Back-end of the Multy - mobile multy-blockchain wallet.
Stars: ✭ 26 (-96.96%)
Mutual labels: bitcoin
Classpy
Classpy is a GUI tool for investigating Java class file, Lua binary chunk, Wasm binary code, and other binary file formats.
Inspiration
This tool is mainly inspired by javap and JavaClassViewer. I reinvent the wheel for the following two reasons:
1. Learn Java class file format and bytecode through parsing it
2. Try JavaFX 8
Features
- Understands class files described by JVMS9
- Supports Lua 5.3 binary chunk format
- Supports Wasm binary format
- Supports Bitcoin raw block and transaction format
- Displays parsed binary file as tree and hex text
- The corresponding hex text is highlighted when you select a tree node
Quick Start
Just for macos with brew
- Install
brew tap guxingke/repo && brew install classpy
- Try
- open default gui window
classpy
- open gui window with args
echo "public class HelloWorld { public static void main(String[] args) { System.out.println(\"Hello World\"); } }" > HelloWorld.java $JAVA_HOME/bin/javac HelloWorld.java classpy HelloWorld.class
Requirements
Java 15 (checkout branch java8
if you stuck on Java 8)
Build
cd path/to/classpy
./gradlew fatJar
# java -jar path/to/classpy/classpy-gui/build/libs/classpy-fat-jar-0.10.0.jar
Run
cd path/to/classpy
./gradlew run
Screenshots
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].