10 repositorios
Core frameworks and libraries for building Java applications.
Explore 10 awesome GitHub repositories matching part of an awesome list · Java Frameworks. Refine with filters or upvote what's useful.
Recaf es un conjunto de herramientas especializadas para ensamblar, editar, desofuscar, descompilar e instrumentar bytecode de Java y procesos en tiempo de ejecución. Proporciona un entorno coordinado para modificar archivos de clase Java compilados y analizar el comportamiento de las aplicaciones Java. El proyecto se distingue por una capa de abstracción de múltiples niveles que permite la edición a través de diferentes formatos y un framework conectable que enruta el bytecode a través de múltiples motores de descompilación configurables. Incluye un motor de scripting embebido y una arquitectura de plugins para automatizar tareas repetitivas y extender el comportamiento del sistema. El conjunto de herramientas cubre varias áreas de capacidad de alto nivel, incluyendo análisis estático para buscar contenido de aplicaciones y simular estados de ejecución de métodos. También admite instrumentación en tiempo de ejecución para adjuntar a procesos en vivo y transformación automatizada de bytecode para eliminar la ofuscación y reparar archivos de clase. La ejecución headless es compatible a través de una interfaz de línea de comandos para integrar flujos de trabajo en tuberías de construcción externas.
Enables attaching to live Java processes to modify or analyze code during execution.
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
Provides a Java agent API for transforming loaded classes during application startup or execution.
ChaosBlade is an open-source chaos engineering platform that injects faults into applications, containers, Kubernetes clusters, and host systems to test resilience. It functions as a multi-layer fault injection tool, capable of disrupting system resources, Java, C++, NodeJS, and Golang applications, Docker containers, and Kubernetes pods and nodes from a single interface. The platform distinguishes itself through its architecture, which defines chaos experiments as Kubernetes Custom Resource Definitions for native cluster integration, and supports multiple fault injection mechanisms including
Attaches a Java Agent at runtime to intercept and modify bytecode for injecting delays, exceptions, and failures.
btrace es una herramienta de rastreo dinámico y perfilador de rendimiento para JVM, utilizada para inyectar scripts de instrumentación seguros en una Máquina Virtual Java en ejecución sin requerir el reinicio del proceso. Funciona como un framework de agente Java y un servidor de Model Context Protocol, exponiendo operaciones de diagnóstico de JVM y herramientas de rastreo a modelos de lenguaje grandes y asistentes de IA. El proyecto se distingue por permitir la inyección de código en tiempo real y la instrumentación a nivel de bytecode mediante un protocolo binario seguro. Garantiza la estabilidad en producción a través de un motor de análisis de seguridad estática que bloquea patrones de código inestables, como bucles y asignaciones, durante la fase de compilación del script. El sistema cubre una amplia gama de capacidades de observabilidad, incluyendo el rastreo de ejecución de métodos, el seguimiento de asignación de objetos y el monitoreo de acceso a campos. Proporciona perfiles de rendimiento mediante métricas de latencia y muestreo de datos de ejecución, y puede emitir eventos personalizados de Java Flight Recorder para análisis nativo. El agente admite estrategias de despliegue flexibles, incluyendo el arranque al inicio o la conexión a procesos en vivo en entornos contenedorizados utilizando paquetes fat JAR.
Enables attaching to and modifying live JVM processes via instrumentation APIs for real-time monitoring.
btrace es una herramienta de rastreo dinámico y framework de instrumentación para Java, diseñado para diagnósticos en tiempo real. Permite la inyección de código de monitoreo en máquinas virtuales Java en ejecución para analizar el comportamiento y diagnosticar procesos sin necesidad de reiniciar la aplicación. La plataforma cuenta con un motor de sondas dinámicas para ejecutar comandos de depuración de una sola línea para imprimir datos y rastrear pilas de llamadas (call stacks). Proporciona un framework de rastreo extensible que admite funcionalidades personalizadas e integraciones externas a través de módulos de implementación aislados. El sistema cubre el monitoreo de rendimiento en tiempo de ejecución, el rastreo de ejecución de métodos y el diagnóstico de aplicaciones Java. Captura tiempos, datos de excepciones y valores de argumentos en los puntos de entrada y salida de funciones, mientras gestiona la seguridad de las extensiones mediante un sistema de permisos que controla el acceso a la red y al sistema de archivos.
Utilizes Java agents to transform classes at runtime, enabling non-invasive monitoring of running virtual machines.
Small-Spring es una implementación simplificada en Java del framework Spring, diseñada para estudiar la arquitectura interna de los contenedores de inversión de control y los frameworks de inyección de dependencias. Funciona como un contenedor de beans que gestiona el ciclo de vida de los objetos y resuelve dependencias mediante la instanciación automatizada y la inyección de propiedades. El proyecto implementa un mecanismo para interceptar llamadas a métodos mediante proxies dinámicos para soportar la programación orientada a aspectos. Separa las preocupaciones transversales de la lógica de negocio envolviendo objetos objetivo para modificar la ejecución de métodos. El sistema cubre el descubrimiento de componentes mediante el escaneo del classpath y la carga de recursos externos, incluyendo el análisis de configuraciones XML. Incluye gestión del contexto de la aplicación, control del alcance de los beans y un sistema de despacho de eventos basado en el patrón observador para manejar eventos del sistema y hooks de ciclo de vida.
A simplified implementation of the Spring framework for learning.
JaCoCo es una herramienta de cobertura de código Java y un instrumentador de bytecode que mide qué partes del código fuente se ejecutan durante las pruebas. Funciona como un agente de tiempo de ejecución para monitorear la ejecución de la aplicación sobre la marcha o como una biblioteca para la instrumentación de bytecode fuera de línea, lo que le permite capturar datos de ejecución en entornos donde los agentes de tiempo de ejecución están restringidos. El proyecto se distingue por proporcionar rutas de instrumentación dinámicas y estáticas para rastrear la ejecución. Incluye un agente de tiempo de ejecución para el monitoreo sobre la marcha y la capacidad de modificar archivos de clase compilados antes de la ejecución. Además, permite la recuperación de métricas de ejecución de procesos en ejecución a través de conexiones de red remotas sin interrumpir la aplicación activa. El sistema calcula métricas de cobertura cuantitativas a través de instrucciones, ramas, líneas, métodos y clases, junto con mediciones de complejidad ciclomática. Proporciona capacidades para fusionar datos de múltiples ejecuciones de prueba, hacer cumplir umbrales de cobertura dentro de puertas de calidad CI/CD y generar informes que mapean el bytecode ejecutado de vuelta al código fuente. La integración visual está disponible para mostrar estos resultados directamente dentro de los editores de código. La herramienta se integra con sistemas de automatización de compilación e interfaces de línea de comandos para automatizar la recolección de datos y la generación de informes.
Functions as a Java agent that monitors application execution on the fly to record coverage data.
像我们之前完成手写 Spring一样,拆解功能、简化流程、渐进实现,让读者能够更容易的学习到最有价值的知识。
A lightweight ORM framework implementation for educational purposes.
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。
Introductory examples for building microservices with Spring Cloud.
itstack-demo-frame
A collection of service framework components and scaffolding.