classpy

JAVA源码 2025-08-19

classpy

classpy是用于研究Java类文件,LUA二进制块,WASM二进制代码和其他二进制文件格式的GUI工具。

灵感

该工具主要受Javap和JavaclassViewer的启发。我以下两个原因重新发明了方向盘:

 1. Learn Java class file format and bytecode through parsing it
2. Try JavaFX 8

特征

  • 了解JVMS所描述的类文件
  • 支持LUA 5.3二进制块格式
  • 支持WASM二进制格式
  • 支持比特币原始块和交易格式
  • 显示解析的二进制文件作为树和十六进制文本
  • 当您选择树节点时,突出显示相应的十六进制文本

快速开始

仅适用于Macos和Brew

  • 安装
brew tap guxingke/repo && brew install classpy
  • 尝试
    • 打开默认GUI窗口
     classpy
    • 带有args的开放式GUI窗口
    HelloWorld.java $JAVA_HOME/bin/javac HelloWorld.java classpy HelloWorld.class">
     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

要求

Java 15(Checkout Branch java8 ,如果您卡在Java 8上)

建造

classpy ./gradlew fatJar # java -jar path/to/ classpy / classpy -gui/build/libs/ classpy -fat-jar-0.10.0.jar">
 cd path/to/ classpy
./gradlew fatJar
# java -jar path/to/ classpy / classpy -gui/build/libs/ classpy -fat-jar-0.10.0.jar 

跑步

classpy ./gradlew run">
 cd path/to/ classpy
./gradlew run

屏幕截图

下载源码

通过命令行克隆项目:

git clone https://github.com/zxh0/classpy.git