# Byte Buddy

A code generation and manipulation library that creates and changes Java classes at runtime without a compiler, usable as a library, a Java agent, or a build-time tool.

Byte Buddy is a code generation and manipulation library for creating and modifying Java classes during the runtime of a Java application, without the help of a compiler. Unlike the code generation utilities in the Java Class Library, it can create arbitrary classes rather than only implementing interfaces for runtime proxies, and it offers an API for changing existing classes manually, through a Java agent, or during a build.

It supports Java class file versions back to Java 5, with newer Byte Buddy releases extending support to current Java versions through the Class File API. The generated classes leave no trace of Byte Buddy and can run without it on the classpath. Byte Buddy itself is written in Java 5 and depends only on the ASM byte code parser library's visitor API.

Website: https://bytebuddy.net
