// the find
fuzhengwei/itstack-demo-bytecode
本专栏主要针对字节码编程系列知识栈进行编写文章学习。在字节码编程方便有三个比较常见的框架;ASM、Javassit、Byte-buddy,他们都可以使用自己的API方式进行字节码的插装,通过这样增强方法的方式就可以和Javaagent结合起来开发非入侵的全链路监控服务,以及做反射、中间件和混淆代码等
A companion-code repo for a Chinese-language blog series teaching Java bytecode manipulation (ASM, Javassist, Byte Buddy) and how to combine them with Javaagent to build non-invasive, Dapper-style distributed tracing. Good fit for Java developers who want to actually understand bytecode instrumentation rather than just use an APM agent as a black box.
Each numbered module (1-01, 1-02, 2-03, etc.) isolates one concept as a standalone Maven project, so you can run and diff adjacent steps to see exactly what changed instead of wading through one giant codebase. It covers all three major bytecode approaches side by side — ASM (raw bytecode/operand stack), Javassist, and Byte Buddy — which is useful for seeing the actual API tradeoffs rather than just reading about them. The progression toward a working Javaagent-based tracer (method timing, ThreadLocal trace IDs, JVM memory/GC capture) grounds the bytecode theory in a real architecture pattern instead of toy examples.
Everything is Chinese-only — README, presumably code comments and the linked blog posts — so it's a non-starter if you don't read Chinese. No commits since mid-2022, and the ASM/Javassist/Byte Buddy versions in each pom.xml are frozen from then, so expect friction pulling any of this into a modern project. There's no shared parent POM or common module visible, just dozens of near-duplicate project skeletons, and the only tests are thin ApiTest classes with no CI. The README spends more space on WeChat groups and donation QR codes than on technical orientation, which is a signal this is marketing for the author's column first and a reference implementation second.