10 个仓库
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 是一套专门用于汇编、编辑、去混淆、反编译和检测 Java 字节码及运行时进程的工具。它提供了一个协调环境,用于修改已编译的 Java 类文件并分析 Java 应用的行为。 该项目的独特之处在于一个多级抽象层,允许跨不同格式进行编辑,以及一个通过多个可配置反编译引擎路由字节码的可插拔框架。它包括一个嵌入式脚本引擎和插件架构,以自动化重复任务并扩展系统行为。 该工具集涵盖了几个高级能力领域,包括用于搜索应用内容和模拟方法执行状态的静态分析。它还支持用于附加到实时进程的运行时检测,以及用于移除混淆和修复类文件的自动化字节码转换。 通过命令行界面支持无头执行,以便将工作流集成到外部构建流水线中。
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 是一个 JVM 动态追踪工具和性能分析器,用于将安全的检测脚本注入正在运行的 Java 虚拟机中,而无需重启进程。它作为一个 Java 代理框架和模型上下文协议(MCP)服务器,将 JVM 诊断操作和追踪工具暴露给大语言模型和 AI 助手。 该项目的独特之处在于通过安全二进制协议实现实时代码注入和字节码级检测。它通过静态安全分析引擎确保生产环境的稳定性,该引擎在脚本编译阶段会拦截不稳定的代码模式(如循环和内存分配)。 该系统涵盖了广泛的可观测性功能,包括方法执行追踪、对象分配跟踪和字段访问监控。它通过延迟指标和执行数据采样提供性能分析,并能发出自定义的 Java Flight Recorder 事件以进行原生分析。 该代理支持灵活的部署策略,包括在启动时引导或使用 fat JAR 包在容器化环境中附加到实时进程。
Enables attaching to and modifying live JVM processes via instrumentation APIs for real-time monitoring.
btrace 是一个 Java 动态追踪工具和检测框架,专为实时诊断而设计。它允许将监控代码注入正在运行的 Java 虚拟机中,以分析行为并诊断进程,而无需重启应用程序。 该平台具有一个动态探测引擎,用于执行单行调试命令以打印数据和追踪调用栈。它提供了一个可扩展的追踪框架,通过隔离的实现模块支持自定义功能和外部集成。 该系统涵盖了运行时性能监控、方法执行追踪和 Java 应用程序诊断。它在函数入口和出口点捕获计时、异常数据和参数值,同时通过控制对网络和文件系统访问的权限系统来管理扩展安全性。
Utilizes Java agents to transform classes at runtime, enabling non-invasive monitoring of running virtual machines.
Small-Spring 是一个简化的 Java Spring 框架实现,旨在研究控制反转 (IoC) 容器和依赖注入框架的内部架构。它作为一个 Bean 容器,通过自动实例化和属性注入来管理对象生命周期并解析依赖关系。 该项目实现了使用动态代理拦截方法调用的机制,以支持面向切面编程 (AOP)。它通过包装目标对象来修改方法执行,从而将横切关注点与业务逻辑分离。 该系统涵盖了通过类路径扫描进行组件发现以及加载外部资源(包括 XML 配置解析)。它还包括应用上下文管理、Bean 作用域控制,以及基于观察者模式的事件分发系统,用于处理系统事件和生命周期钩子。
A simplified implementation of the Spring framework for learning.
JaCoCo 是一个 Java 代码覆盖率工具和字节码插桩工具,用于衡量测试过程中执行了源代码的哪些部分。它既可以作为运行时代理来实时监控应用执行,也可以作为离线字节码插桩库,从而在受限的运行时环境中捕获执行数据。 该项目的特点是提供动态和静态两种插桩路径来跟踪执行情况。它包含一个用于实时监控的运行时代理,并具备在执行前修改已编译类文件的能力。此外,它还支持在不中断活动应用的情况下,通过远程网络连接从运行中的进程检索执行指标。 该系统可计算指令、分支、行、方法和类级别的定量覆盖率指标,以及圈复杂度。它提供了合并多次测试运行数据、在 CI/CD 质量门禁中强制执行覆盖率阈值,以及生成将执行的字节码映射回源代码的报告等功能。此外,它还支持将结果直接显示在代码编辑器中的可视化集成。 该工具与构建自动化系统和命令行接口集成,以实现数据收集和报告生成的自动化。
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.