awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
HotswapProjects avatar

HotswapProjects/HotswapAgent

0
View on GitHub↗
2,572 estrellas·525 forks·Java·gpl-2.0·5 vistas

HotswapAgent

HotswapAgent is a Java runtime instrumentation agent and bytecode redefinition tool designed to apply code changes to running applications instantly. It functions as a hot swap utility and classloader extender that modifies method bodies and updates class definitions without requiring a process restart.

The project distinguishes itself as a framework state synchronizer, ensuring that beans, caches, and configurations remain consistent after class redefinitions. It provides specialized mechanisms to refresh managed beans, dependency injection points, and persistence factories, allowing logic changes to take effect in live framework-based applications.

The agent's capabilities cover runtime redefinition of API resources, REST services, and proxy classes, as well as the automated invalidation of metadata and introspection caches. It also manages non-code resources by monitoring the filesystem for changes to logging properties, SQL mappers, and configuration files.

The tool supports runtime agent attachment and integrates with build tools and IDE debuggers to automate the reloading of compiled classes.

Features

  • Framework State Synchronizers - JRebel synchronizes state and refreshes configuration for popular libraries and frameworks during runtime updates.
  • Dynamic Class Redefinition - Implements capabilities for replacing loaded classes in memory at runtime to update logic without restarts.
  • Java Runtime Hot-Swapping - Updates compiled Java classes in a running application to apply code changes without restarting the process.
  • Automatic Class Reloading - Automatically applies compiled Java class changes to the running application by monitoring the filesystem.
  • Java Hot Swap Tools - Applies code changes to running Java applications instantly by monitoring compiled class files.
  • Managed Bean Reinjections - JRebel refreshes session-scoped beans and context-managed components in a running application to reflect logic changes.
  • Non-Code Resource Reloading - JRebel watches specified directories for changes to non-class resources and refreshes them in the running application.
  • Post-Compilation Hot-Swapping - Triggers runtime updates automatically whenever a changed class is compiled by the build tool.
  • Rapid Development Tools - Provides utilities to accelerate the development iteration cycle by automatically reloading classes and resources.
  • Bean Instance Updating - JRebel reinjects dependencies or reloads bean instances after a class redefinition to ensure the latest code is active.
  • Bean Registry Refreshing - JRebel updates components by re-scanning for classes and annotations at runtime to refresh the bean registry.
  • Automatic Class Reloading - Watches the filesystem for modified class files and applies updates to the running application automatically.
  • Component Instance Reloading - JRebel updates active instances of proxies, beans, and configurations immediately after their underlying classes are redefined.
  • CDI Bean Redefinition - JRebel registers new bean classes and updates injection points and proxy factories at runtime to apply code changes.
  • Component Configuration Redefinition - JRebel updates framework components and configurations at runtime without requiring an application restart.
  • Classpath Extensions - Injects additional paths and external directories into the Java classpath during application execution.
  • Runtime Instrumentation Agents - Modifies bytecode and redefines classes in a running Java Virtual Machine without restarting the application.
  • Dynamic Dependency Injection - Refreshes managed beans and injection points at runtime to reflect updated logic in framework-based applications.
  • Server Application Hot-Swapping - Modifies classes and web assets within a running server instance to avoid time-consuming application redeployments.
  • Automatic - Clears internal caches, such as those used by Jackson, automatically when a class is redefined.
  • Component - Clears definition and action caches automatically when classes are modified to ensure changes take effect.
  • Metadata Caches - Clears internal metadata caches whenever a class changes to ensure the application uses the most recent definitions.
  • SQL Mapper Reloading - JRebel updates MyBatis mapper configurations in real-time when files change to apply SQL mapping updates.
  • Configuration Hot-Reloaders - JRebel applies changes made to supported configuration files in real time without rebooting the server.
  • Development Asset Monitoring - JRebel monitors specific resource paths and file patterns to trigger actions upon file modification.
  • Framework-Specific Reloading Mechanisms - Integrates custom plugins to implement framework-specific reloading mechanisms for specialized application components.
  • Hot-Patching Tools - Allows application logic to be updated at runtime without requiring a process restart or active debugging session.
  • IDE Integrations - Provides connectors that link the runtime agent to development environments to trigger reloads.
  • Persistence Factory Reloading - JRebel refreshes the persistence factory and reloads configuration when entity classes change.
  • Reloading Hooks - Allows the definition of custom reloading hooks and service registrations for specific application frameworks.
  • Properties File Reloading - JRebel clears the cache of properties files automatically upon modification to apply text and configuration changes.
  • Template Model Refreshing - JRebel updates template models in real time so that changes are reflected in the browser immediately after a page refresh.
  • UI Template Updating - JRebel updates template models and clears internal metadata caches upon class modification to ensure changes appear in the browser.
  • Dynamic Configuration Reloading - JRebel updates web application directories and classpath settings at runtime to reflect code changes in servers like Undertow.
  • Agent Functionality Extensions - Modifies runtime behavior by annotating classes and configuring package discovery to create custom plugins.
  • Persistence Factory Reloading - JRebel refreshes session factories when entity classes change to apply new schema or mapping definitions.
  • Anonymous Class Resolution - Tracks class state via reflection and filesystem analysis to resolve index shifts when modifying anonymous classes.
  • API Resource Redefinition - Redefines root resource and provider classes at runtime so API changes take effect without restarting.
  • Proxy Class Redefinitions - JRebel updates synthetic classes generated by reflection at runtime so changes take effect without restarting.
  • REST Service Redefinition - Hotswaps REST service definitions, updating active resource classes and data contexts without restarting.
  • Runtime Agent Attachment - Allows connecting the instrumentation agent to a Java process while it is already running.
  • Runtime Configuration Management - Enables updating logging, mapping, and property files in a live environment without requiring a system reboot.
  • Dynamic Configuration Reloading - JRebel watches logging configuration files for changes and triggers a full reconfiguration automatically.
  • Resource Registry Refreshing - Cleans and re-registers class definitions within a resource registry to apply code changes without restarting.
  • Static Resource Refreshing - JRebel monitors directories for modified resource files and serves updated versions to the application immediately.
  • Dynamic Route Updating - Registers changes to route definitions when classes are modified to add new views without a restart.
  • Development Utilities - Unlimited runtime class and resource redefinition.
  • Runtime Management Tools - Redefine classes at runtime without redeployment.

Historial de estrellas

Gráfico del historial de estrellas de hotswapprojects/hotswapagentGráfico del historial de estrellas de hotswapprojects/hotswapagent

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a HotswapAgent

Proyectos open-source similares, clasificados según cuántas características comparten con HotswapAgent.
  • alibaba/jvm-sandboxAvatar de alibaba

    alibaba/jvm-sandbox

    6,951Ver en GitHub↗

    jvm-sandbox is a bytecode instrumentation framework and plugin container for the Java Virtual Machine. It acts as a runtime application modifier that enables the injection and modification of bytecode in a running process without requiring an application restart or changes to the original source code. The system provides a non-invasive aspect-oriented programming framework to intercept method execution and alter behavior in live processes. It functions as an isolated environment for functional modules, employing a custom class loader hierarchy to prevent dependency conflicts between plugins a

    Java
    Ver en GitHub↗6,951
  • btraceio/btraceAvatar de btraceio

    btraceio/btrace

    5,989Ver en GitHub↗

    btrace is a JVM dynamic tracing tool and performance profiler used for injecting safe instrumentation scripts into a running Java Virtual Machine without requiring a process restart. It functions as a Java agent framework and a Model Context Protocol server, exposing JVM diagnostic operations and tracing tools to large language models and AI assistants. The project distinguishes itself by enabling real-time code injection and bytecode-level instrumentation via a secure binary protocol. It ensures production stability through a static safety analysis engine that blocks unstable code patterns,

    Javabtracejavajava-application
    Ver en GitHub↗5,989
  • qos-ch/logbackAvatar de qos-ch

    qos-ch/logback

    3,211Ver en GitHub↗

    Logback is a Java logging framework used to record system events and diagnostic messages through a programmable API. It serves as a concrete implementation of the Simple Logging Facade for Java (SLF4J) and provides a structured logging engine for outputting events in machine-readable formats like JSON. The system distinguishes itself through an asynchronous log processor that utilizes circular queues and background workers to reduce performance overhead. It also features a log file rotation manager for size-based or time-based rollover with automatic compression, and the ability to update log

    Java
    Ver en GitHub↗3,211
  • alibaba/arthasAvatar de alibaba

    alibaba/arthas

    37,367Ver en 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
    Ver en GitHub↗37,367
Ver las 30 alternativas a HotswapAgent→

Preguntas frecuentes

¿Qué hace hotswapprojects/hotswapagent?

HotswapAgent is a Java runtime instrumentation agent and bytecode redefinition tool designed to apply code changes to running applications instantly. It functions as a hot swap utility and classloader extender that modifies method bodies and updates class definitions without requiring a process restart.

¿Cuáles son las características principales de hotswapprojects/hotswapagent?

Las características principales de hotswapprojects/hotswapagent son: Framework State Synchronizers, Dynamic Class Redefinition, Java Runtime Hot-Swapping, Automatic Class Reloading, Java Hot Swap Tools, Managed Bean Reinjections, Non-Code Resource Reloading, Post-Compilation Hot-Swapping.

¿Qué alternativas de código abierto existen para hotswapprojects/hotswapagent?

Las alternativas de código abierto para hotswapprojects/hotswapagent incluyen: alibaba/jvm-sandbox — jvm-sandbox is a bytecode instrumentation framework and plugin container for the Java Virtual Machine. It acts as a… btraceio/btrace — btrace is a JVM dynamic tracing tool and performance profiler used for injecting safe instrumentation scripts into a… qos-ch/logback — Logback is a Java logging framework used to record system events and diagnostic messages through a programmable API.… alibaba/arthas — Arthas is a Java diagnostic tool and runtime debugger designed for real-time troubleshooting of applications. It… qunarcorp/bistoury — Bistoury is a production diagnostics tool for Java applications that provides a distributed debugging console, a… alibaba/transmittable-thread-local — This project is a Java thread-local extension and context transmitter designed to preserve execution context across…