awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
raphw avatar

raphw/byte-buddy

0
View on GitHub↗
6,856 stele·850 fork-uri·Java·Apache-2.0·3 vizualizăribytebuddy.net↗

Byte Buddy

Byte Buddy is a runtime code generation and bytecode manipulation library for Java. It provides a fluent API for creating and modifying Java classes during execution, enabling developers to define class structures, methods, and fields programmatically without requiring a compiler or direct bytecode assembly.

The library supports agent-based class transformation, allowing loaded classes to be modified during JVM startup or runtime through a Java agent that intercepts class loading. It offers bytecode-level method interception for fine-grained control over method behavior, annotation-based code weaving for metadata injection, and automatic stack map frame computation required by the JVM verifier. Byte Buddy also includes a class file pool abstraction for efficient caching and reuse of bytecode across multiple transformations, along with dynamic class loading integration for loading generated classes into the JVM.

Beyond its core identity as a bytecode manipulation tool, Byte Buddy enables runtime class creation, modification, and generation, as well as dynamic proxy creation and testing mock generation. It functions as an instrumentation library for weaving monitoring, tracing, or mocking logic into classes, and provides a Java agent framework for transforming loaded classes during application startup or execution. The library's capabilities extend to application code instrumentation, method override with fixed logic, and runtime bytecode transformation of already-loaded classes.

Features

  • Bytecode Manipulation - Directly edits Java bytecode to add, replace, or remove methods and fields in classes.
  • Bytecode Manipulation - Offers low-level bytecode editing capabilities for adding, replacing, or removing methods and fields.
  • Java Agents - Provides a Java agent API for transforming loaded classes during application startup or execution.
  • Arbitrary Structure Class Generators - Generates new Java classes during execution with arbitrary structures beyond simple proxies.
  • Code Instrumentation Utilities - Weaves monitoring, tracing, or mocking logic into classes for observability or testing.
  • Runtime Bytecode Instrumentation - Modifies bytecode of already-loaded classes during execution, including through a Java agent.
  • Bytecode Generators - Generates new Java classes from scratch at runtime by producing bytecode directly.
  • Java Agent Class Transformers - Provides a Java agent framework for transforming loaded classes during JVM startup or execution.
  • Runtime Class Constructors - Creates new Java classes from scratch during execution without needing a compiler.
  • Runtime Class Modifications - Alters behavior of loaded classes at runtime by adding, replacing, or removing methods and fields.
  • Runtime Instrumentation Agents - Transforms loaded classes during JVM startup or runtime via a Java agent for monitoring or profiling.
  • Type-Driven Bytecode Generators - Generates Java bytecode at runtime by manipulating type structures through a fluent API.
  • Runtime Bytecode Compilation - Creates or modifies Java classes at runtime without a compiler, enabling dynamic behavior.
  • Bytecode Generators - Generates and modifies Java bytecode at runtime without requiring a compiler or source code.
  • Bytecode-Level Interceptors - Offers bytecode-level method interception for fine-grained control over method behavior.
  • Instrumentation Libraries - Weaves monitoring, tracing, and mocking logic into Java classes for observability and testing.
  • Type Manipulation Fluent APIs - Provides a fluent API for creating and modifying Java classes during execution without bytecode assembly.
  • Runtime Annotation Weavers - Supports adding, removing, or modifying annotations during bytecode transformations for instrumentation.
  • Fixed Logic Method Overrides - Replaces method implementations with constant return values or custom bytecode via matchers.
  • Custom Class Loader Integrations - Loads generated or modified classes into the JVM using custom class loaders.
  • Runtime Mock Generators - Generates mock or stub classes at runtime for unit testing with controlled behavior.
  • Method Interception Proxies - Generates proxy classes at runtime that delegate method calls to custom handlers.
  • Code Generation and Bytecode - Runtime code generation for the Java virtual machine.

Istoric stele

Graficul istoricului de stele pentru raphw/byte-buddyGraficul istoricului de stele pentru raphw/byte-buddy

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face raphw/byte-buddy?

Byte Buddy is a runtime code generation and bytecode manipulation library for Java. It provides a fluent API for creating and modifying Java classes during execution, enabling developers to define class structures, methods, and fields programmatically without requiring a compiler or direct bytecode assembly.

Care sunt principalele funcționalități ale raphw/byte-buddy?

Principalele funcționalități ale raphw/byte-buddy sunt: Bytecode Manipulation, Java Agents, Arbitrary Structure Class Generators, Code Instrumentation Utilities, Runtime Bytecode Instrumentation, Bytecode Generators, Java Agent Class Transformers, Runtime Class Constructors.

Care sunt câteva alternative open-source pentru raphw/byte-buddy?

Alternativele open-source pentru raphw/byte-buddy includ: jboss-javassist/javassist — Javassist is a bytecode engineering toolkit for analyzing, modifying, and generating Java bytecode and class files. It… cglib/cglib — cglib is a suite of tools for JVM bytecode generation, class transformation, and dynamic proxying. It provides a… alibaba/arthas — Arthas is a Java diagnostic tool and runtime debugger designed for real-time troubleshooting of applications. It… powermock/powermock — Powermock is a Java mocking framework and unit testing tool that uses bytecode manipulation to mock static methods,… m0bilesecurity/rms-runtime-mobile-security — This project is an Android security analysis toolkit and mobile app runtime manipulator designed for reverse… alibaba/jvm-sandbox — jvm-sandbox is a bytecode instrumentation framework and plugin container for the Java Virtual Machine. It acts as a…

Alternative open-source pentru Byte Buddy

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Byte Buddy.
  • jboss-javassist/javassistAvatar jboss-javassist

    jboss-javassist/javassist

    4,230Vezi pe GitHub↗

    Javassist is a bytecode engineering toolkit for analyzing, modifying, and generating Java bytecode and class files. It functions as a bytecode manipulation library that allows for the editing of class files through either direct bytecode access or high-level source code syntax. The project provides specialized tools for the programmatic creation of new Java classes and interfaces during runtime. It includes a dynamic proxy generator for intercepting method calls and a class loader interceptor that automatically modifies class definitions as they are loaded into the Java Virtual Machine. Addi

    Javajavajava-bytecode
    Vezi pe GitHub↗4,230
  • cglib/cglibAvatar cglib

    cglib/cglib

    4,896Vezi pe GitHub↗

    cglib is a suite of tools for JVM bytecode generation, class transformation, and dynamic proxying. It provides a high-level API for creating and transforming Java bytecode at runtime to modify class behavior and a framework for intercepting method calls and field access. The project implements dynamic proxy generation to support aspect oriented programming and custom data access patterns. It also includes a serialization manager to implement serialization contracts by adding specific methods and controlling object replacement within proxy classes. The library covers bytecode manipulation and

    Java
    Vezi pe GitHub↗4,896
  • alibaba/arthasAvatar alibaba

    alibaba/arthas

    37,367Vezi pe GitHub↗

    Arthas is a Java diagnostic tool and runtime debugger designed for real-time troubleshooting of applications. It functions as a remote diagnostics agent that allows users to inspect the runtime state of a Java process, including its heap objects and classloader hierarchies, without requiring a process restart. The project distinguishes itself through advanced bytecode manipulation capabilities, enabling live class hotswapping and the modification of bytecode in running processes. It supports in-memory source compilation and runtime bytecode decompilation to verify and update logic instantly w

    Javaagentalibabaarthas
    Vezi pe GitHub↗37,367
  • powermock/powermockAvatar powermock

    powermock/powermock

    4,174Vezi pe GitHub↗

    Powermock is a Java mocking framework and unit testing tool that uses bytecode manipulation to mock static methods, final classes, and private constructors. It includes a Java agent instrumentation tool and a reflection-based testing utility to bypass encapsulation and modify class behavior at runtime. The project distinguishes itself by providing the ability to intercept the instantiation of objects via the new keyword and simulate the behavior of core Java system classes and native methods. It can override final modifiers on classes and methods and bypass signature restrictions for classes

    Java
    Vezi pe GitHub↗4,174
Vezi toate cele 30 alternative pentru Byte Buddy→