新手上路 5小时前
主楼

架构

帮助实现和验证设计和架构概念的框架和库。
  • ArchUnit - 用于指定和断言架构规则的测试库。
  • jMolecules - 用于在代码中表达设计和架构概念的注解和接口。

人工智能

帮助您利用 LLMs 和 AI 的框架
  • LangChain4j - 简化 LLMs 的集成,提供统一的 API 和全面的工具箱。
  • MCP Java SDK - 使应用程序能够通过标准接口(即模型上下文协议)与 AI 模型和工具交互,支持同步和异步通信模式。
  • simple-openai - 最简单方式使用 OpenAI API(及兼容的 API)的库。
  • Spring AI - 用于 Spring 的 AI 工程应用框架。

Bean 映射

简化框架,简化 Bean 映射。
  • dOOv - 提供用于类型安全的领域模型验证和映射的流畅 API。它使用注解、代码生成和类型安全的 DSL,使 Bean 验证和映射变得快速且简单。
  • JMapper - 使用字节码操作实现闪电般的映射。支持注解和 API 或 XML 配置。
  • MapStruct - 基于约定优于配置的方法简化不同 Bean 类型之间的映射的代码生成器。
  • ModelMapper - 一款智能对象映射库,可自动将对象映射到彼此。
  • Orika - JavaBean 映射框架,可递归地将(以及其他功能)数据从一个对象复制到另一个对象。
  • reMap - 基于 Lambda 和方法句柄的映射,如果对象名称不同,则不需要代码和注解。
  • Selma - 基于注解处理器的 Bean 映射器。

构建

处理应用程序的构建周期和依赖关系的工具。
  • Apache Maven - 基于约定的声明式构建和依赖管理,优于配置。与使用较为过程化方法的 Apache Ant 相比,它可能更易于维护。
  • Bazel - 来自 Google 的工具,能够快速可靠地构建代码。
  • Buck2 - 鼓励创建由代码和资源组成的、小型可重用模块。
  • Gradle - 通过 Groovy 编程实现增量构建,而不是声明 XML。与 Maven 的依赖管理配合良好。

字节码操作

Libraries to manipulate bytecode programmatically.
  • ASM - 通用型、低级字节码操作和分析。
  • Byte Buddy - 通过一种流畅的 API 进一步简化字节码生成。
  • bytecode-viewer - Java 8 Jar & Android APK 反编译套件。(仅 GPL-3.0 授权)
  • Byteman - 通过 DSL(规则)在运行时操作字节码;主要用于测试/故障排除。(LGPL-2.1-or-later)
  • cglib - 字节码生成库。
  • Javassist - 试图简化字节码编辑。
  • Maker - 提供低级别的字节码生成。
  • Mixin - 使用真实的 Java 代码在运行时操作字节码。
  • Perses - 根据混沌工程的原则,在字节码级别动态注入故障/延迟。
  • Recaf - JVM 反编译工具包,本质上是一个 Java 字节码的 IDE。

缓存

提供缓存功能的库。
  • cache2k - 内存高性能缓存库。
  • Caffeine - 高性能、接近最优的缓存库。
  • Ehcache - 分布式通用缓存。
  • Infinispan - 高并发键值数据存储,用于缓存。

命令行界面

与 CLI 相关的所有库。

参数解析

用于解析命令行参数的库。
  • Airline - 基于注解的框架,用于解析类似 Git 的命令行参数。
  • JCommander - 命令行参数解析框架,通过实现接口支持自定义类型和验证。
  • jbock - 无反射命令行解析器。
  • JLine - 包含现代 Shell 的功能,如补全或历史记录。
  • picocli - 使用注解支持 ANSI 颜色和样式,POSIX/GNU/任何语法,子命令,选项和位置参数的强类型。

基于文本的用户界面

提供 TUI 框架的库,或与相关功能构建块。
  • Jansi - 使用 ANSI 转义码格式化控制台输出。
  • Jexer - 高级控制台(和 Swing)文本用户界面(TUI)库,具有可拖动窗口、内置终端窗口管理器和 sixel 图像支持。看起来像Turbo Vision
  • Text-IO - 辅助创建全基于控制台的应用程序。
  • Lanterna - 易于使用的控制台文本 GUI 库,类似于 curses。(仅限 LGPL-3.0)

用于集成或使用特定云功能的库。

代码分析

提供指标和质量测量工具。
  • Checkstyle - 代码规范和标准的静态分析。(LGPL-2.1-or-later)
  • 易出错 - 在编译时捕获常见的编程错误。
  • 易出错支持 - Error Prone 扩展:额外的 bug 检查器和大量的 Refaster 模板。
  • Infer - 一种现代静态分析工具,用于验证代码的正确性。
  • jQAssistant - 基于 Neo4J 查询语言的静态代码分析。(仅 GPL-3.0 授权)
  • NullAway - 通过低构建时开销消除 NullPointerExceptions。
  • PMD - 源代码分析,用于查找不良编码实践。
  • p3c - 提供阿里巴巴的 PMD、IDEA 和 Eclipse 编码规范。
  • RefactorFirst - 识别并优先处理 God 类和高度耦合类。
  • SonarJava - 用于 SonarQube 和 SonarLint 的静态分析器。(仅限 LGPL-3.0)
  • Spoon - 用于分析和转换 Java 源代码的库。
  • Spotbugs - 静态分析字节码以发现潜在错误。(仅限 LGPL-2.1)
  • ToolsHref - 在线 Java 代码分析器和 JSON 转 Mermaid 可视化工具。

代码覆盖率

支持测试套件代码覆盖率指标收集的框架和工具。
  • Clover - 依赖于源代码插桩而非字节码插桩。
  • Cobertura - 依赖于离线(或静态)字节码插桩和类加载来收集代码覆盖率指标。(仅 GPL-2.0 许可)
  • JaCoCo - 一个能够收集代码覆盖率指标的框架,使用离线和运行时字节码插装。

代码生成器

用于生成重复代码模式的工具,以减少冗余和易错性。
  • ADT4J - 用于代数数据类型的 JSR-269 代码生成器。
  • Auto - 自动生成工厂、服务和值类。
  • Avaje Http Server - 使用 Javalin 或 Helidon (Nima) SE 生成轻量级 JAX-RS 风格 HTTP 服务器。
  • Bootify - 基于浏览器的 Spring Boot 应用生成,具有 JPA 模型和 REST API。
  • EasyEntityToDTO - 注解处理器,用于自动生成 DTO 和 Mapper,无需样板代码。
  • FreeBuilder - 自动生成 Builder 模式。
  • Geci - 发现需要生成代码的文件,自动更新并使用便捷的 API 写入源代码。
  • Immutables - 注解处理器,生成简单、安全且一致的价值对象。
  • JavaPoet - 生成源文件的 API。
  • JHipster - 用于 Spring Boot 和 AngularJS 的 Yeoman 源代码生成器。
  • Joda-Beans - 一个小型框架,为 Java 添加可查询属性,增强 JavaBeans。
  • JPA Buddy - IntelliJ IDEA 插件。提供可视化工具,用于生成 JPA 实体、Spring Data JPA 仓库、Liquibase 变更日志和 SQL 脚本。通过比较模型与数据库自动生成 Liquibase/Flyway 脚本,并从数据库表中逆向工程 JPA 实体。
  • JSpecify Package-Info Generator - Maven 插件,自动生成带有 JSpecify 注解(@NullMarked 和 @NullUnmarked)的 package-info.java 文件,帮助您在 Java 项目中管理空值边界,无需手动编写样板代码。
  • Lombok - 一种旨在减少冗余代码的代码生成器。
  • Record-Builder - 适用于 Java 记录的辅助构建类,包含构建器、模板和辅助工具。
  • Telosys - 简单轻量级代码生成器,可作为 Eclipse 插件使用,也可作为 CLI 使用。

编译器编译器

帮助创建解析器、解释器或编译器的框架。
  • ANTLR - 用于自顶向下解析的复杂全功能框架。
  • JavaCC - 生成自顶向下解析器的解析器生成器。允许词法状态切换,并支持扩展 BNF 规范。
  • JFlex - 词法分析器生成器。

计算机视觉

从图像和视频中获取高级信息的库。
  • BoofCV - 用于图像处理、相机标定、跟踪、光流法、多视图几何、三维视觉、二维码等的库。
  • ImageJ - 带有 API 的医学图像处理应用程序。
  • JavaCV - OpenCV、FFmpeg 等的 Java 接口。

配置

Libraries that provide external configuration.
  • avaje config - 加载 yaml 和 properties 文件,支持动态配置、插件、文件监视和配置事件监听器。
  • centraldogma - 基于 Git、ZooKeeper 和 HTTP/2 的高可用版本控制服务配置存储库。
  • config - 支持 Java 属性、JSON 及其人类优化超集 HOCON 的配置库。
  • Configurate - 支持多种配置格式和转换的配置库。
  • Curator Framework - Apache ZooKeeper 的高级 API。
  • dotenv - 使用特定环境文件的十二因素配置库。
  • Externalized Properties - 简单、轻量级且功能强大的配置库,支持从文件、数据库、git 仓库等外部源解析属性,并具有可扩展的后处理/转换机制。
  • Gestalt - Gestalt 为配置管理挑战提供全面的解决方案。它允许您从多个输入源获取配置数据,智能地合并它们,并以结构化、类型安全的方式呈现。
  • ini4j - 提供处理 Windows INI 文件的 API。
  • KAConf - Java 和 Kotlin 的基于注解的配置系统。
  • microconfig - 针对微服务设计的配置系统,有助于将配置与代码分离。不同服务的配置可以包含公共和特定部分,并且可以动态分发。
  • owner - 减少属性样板代码。

约束满足问题求解器

帮助实现优化和可满足问题的库
  • Choco - 即用型约束满足问题求解器,使用约束编程技术。
  • JaCoP - 包含 FlatZinc 语言的接口,使其能够执行 MiniZinc 模型。(AGPL-3.0)
  • OptaPlanner - 商业规划和资源调度优化求解器。
  • Timefold - 灵活的求解器,支持 Spring/Quarkus,并提供车辆路径问题、维护调度、员工排班等快速入门。

CSV

简化读取/写入 CSV 数据的框架和库。
  • FastCSV - 性能优化,无依赖,并符合 RFC 4180 标准。
  • jackson-dataformat-csv - 用于读取和写入 CSV 的 Jackson 扩展。
  • opencsv - 简单的 CSV 解析器。
  • Super CSV - 功能强大的 CSV 解析器,支持 Dozer、Joda-Time 和 Java 8。
  • uniVocity-parsers - 速度最快、功能最全的解析器之一。同时提供 TSV 和固定宽度记录的解析器。

数据结构

高效且特定的数据结构。
  • Apache Avro - 带有动态类型、无标签数据以及不存在手动分配 ID 的数据交换格式。
  • Apache Orc - 针对基于 Hadoop 的工作负载的快速高效的列式存储格式。
  • Apache Parquet - 基于 Google 在 Dremel 论文中提出的组装算法的列式存储格式。
  • Apache Thrift - 一种由 Facebook 发起的数据交换格式。
  • Big Queue - 基于内存映射文件的高速持久队列。
  • HyperMinHash-java - 一种用于在 loglog 空间中计算并集、交集和集合基数的概率数据结构。
  • Persistent Collection - Java Collections Framework 的持久和不可变类比。
  • Protobuf - Google 的数据交换格式。
  • RoaringBitmap - 高速且高效的压缩位图。
  • SBE - 简单二进制编码,目前最快的消息格式之一。
  • Tape - 高速、事务性、基于文件的 FIFO。
  • Wire - 简洁、轻量级的协议缓冲区。

数据库

所有简化数据库交互的内容。
  • Apache Calcite - 动态数据管理框架。它包含了典型数据库管理系统中的许多组件。
  • Apache Drill - 分布式、动态模式、ANSI SQL 查询引擎,用于大数据探索。
  • Apache Phoenix - 基于 HBase 的高性能关系数据库层,适用于低延迟应用。
  • ArangoDB - ArangoDB Java 驱动。
  • Chronicle Map - 高效的内存键值存储(可选持久化到磁盘),堆外内存。
  • Debezium - 低延迟数据流平台,用于变更数据捕获。
  • druid - 高性能、列式存储的分布式数据存储。
  • eXist - NoSQL 文档数据库和应用平台。(仅限 LGPL-2.1)
  • FlexyPool - 为最常见的连接池解决方案带来指标和故障转移策略。
  • Flyway - 简单的数据库迁移工具。
  • H2 - 小型 SQL 数据库,以其内存功能而闻名。
  • HikariCP - 高性能 JDBC 连接池。
  • HSQLDB - 100% Java 的 HyperSQL 数据库。
  • JDBI - 方便的 JDBC 抽象层。
  • Jedis - 用于与 Redis 交互的小型客户端,包含命令方法。
  • Jest - Elasticsearch REST API 的客户端。
  • jetcd - etcd 的客户端库。
  • Jinq - 通过对 Java 8 Lambdas 进行符号执行实现类型安全的数据库查询(基于 JPA 或 jOOQ)。
  • jOOQ - 基于 SQL 架构生成类型安全的代码。
  • Leaf - 分布式 ID 生成服务。
  • Lettuce - Lettuce 是一个可扩展的 Redis 客户端,用于构建非阻塞的 Reactive 应用程序。
  • Liquibase - 一种数据库无关的库,用于跟踪、管理和应用数据库模式变更。
  • MapDB - 支持磁盘或堆外内存的嵌入式数据库引擎,提供并发集合。
  • MariaDB4j - 无需安装或外部依赖的 MariaDB 启动器。
  • Modality - 轻量级 ORM,具有数据库逆向工程功能。
  • OpenDJ - LDAPv3 兼容的目录服务,为 Java 平台开发,提供高性能、高可用性和安全的身份存储。
  • Querydsl - Typesafe 统一查询。
  • QueryStream - 使用类似流的 API 构建 JPA Criteria 查询。
  • QuestDB - 高性能时间序列 SQL 数据库。支持 InfluxDB 行协议、PostgreSQL 线协议和 REST。
  • Realm - 可直接在手机、平板或可穿戴设备中运行的移动数据库。
  • Redisson - 允许在 Redis 服务器上构建分布式和可扩展的数据结构。
  • requery - 现代、轻量级但功能强大的对象映射和 SQL 生成器。轻松映射到或创建数据库,或从任何使用 Java 的平台执行查询和更新。
  • Speedment - 利用 Java 8 的 Stream API 进行查询的数据库访问库。
  • Spring Data Dynamic Query - 用于 Spring Data JPA、MongoDB 和 Elasticsearch 的统一动态查询接口,支持高级 JOIN(s)、OR 逻辑、作用域条件、强大的投影和零样板的高级功能。
  • Spring Data JPA MongoDB Expressions - 允许您使用 MongoDB 查询语言来查询您的关系型数据库。
  • Trino - 大数据分布式 SQL 查询引擎。
  • Vibur DBCP - 具有高级性能监控功能的 JDBC 连接池库。
  • Xodus - 高并发、无模式且符合 ACID 的嵌入式数据库。
  • CosId - 通用、灵活、高性能分布式 ID 生成器。
  • Apache ShardingSphere - 一种分布式 SQL 事务和查询引擎,支持在任何数据库上进行数据分片、扩展、加密等操作。

日期和时间

处理日期和时间的库。
  • iCal4j - 解析和构建 iCalendar RFC 5545 数据模型。
  • Jollyday - 确定给定年份、国家/名称以及最终州/地区的假日。
  • ThreeTen-Extra - 附加的日期时间类,补充 JDK 8 中的类。
  • Time4J - 高级日期和时间库。(仅限 LGPL-2.1)

去中心化

处理去中心化任务的库。
  • java-tron Tron 协议的实现,利用区块链开发去中心化应用。

依赖注入

帮助实现控制反转范式的库。
  • Apache DeltaSpike - CDI 扩展框架。
  • Avaje Inject - 面向微服务的编译时注入框架,无需反射。
  • Dagger - 编译时注入框架,无需反射。
  • Feather - 超轻量级,符合 JSR-330 规范的依赖注入库。
  • Governator - 增强 Google Guice 的扩展和工具
  • Guice - 轻量级且带有观点的框架,可完成 Dagger。
  • HK2 - 轻量级和动态依赖注入框架。
  • JayWire - 轻量级依赖注入框架。(仅限 LGPL-3.0)

开发

在基础层面上增强开发过程。
  • AspectJ - 无缝面向切面编程扩展。
  • DCEVM - 允许在运行时无限制地重新定义已加载类的一种 JVM 修改。(仅 GPL-2.0 许可)
  • Faux Pas - 通过绕过 Java 运行时中默认不允许任何函数式接口抛出受检异常的问题,简化错误处理的库。
  • HotswapAgent - 无限制的运行时类和资源重新定义。(仅 GPL-2.0 许可)
  • JavaParser - 解析、修改和生成 Java 代码。
  • JavaSymbolSolver - 符号解析器。
  • Manifold - 通过类型安全的元编程、结构化类型和扩展方法等功能为 Java 重新注入活力。
  • NoException - 允许在函数式接口中使用检查异常,并将异常转换为 Optional 返回。
  • SneakyThrow - 无需字节码操作即可忽略检查异常。也可以在 Java 8 流操作中使用。
  • Tail - 使用尾调用优化实现无限递归。

分布式应用

用于编写分布式和容错应用的库和框架。
  • Apache Geode - 提供可靠异步事件通知和保证消息传递的内存数据管理系统。
  • Apache Storm - 实时计算系统。
  • Apache ZooKeeper - 用于大型分布式系统的分布式配置、同步和命名注册的协调服务。
  • Atomix - 具有容错能力的分布式协调框架。
  • Axon - 用于创建 CQRS 应用的框架。
  • Dropwizard Circuit Breaker - Dropwizard 的断路器设计模式。(仅 GPL-2.0 许可)
  • Failsafe - 通过重试和断路器实现简单的故障处理。
  • Hazelcast - 高度可扩展的内存数据网格,提供免费的开源版本。
  • JGroups - 可靠消息传递和集群创建的工具包。
  • Quasar - JVM 的轻量级线程和演员
  • resilience4j - 函数式容错库。
  • OpenIG - 高性能反向代理服务器,具有专业的会话管理和凭据重放功能。
  • ScaleCube Services - 基于 SWIM 和 gossip 协议的嵌入式集群成员库。
  • Zuul - 提供动态路由、监控、弹性、安全等功能的网关服务。

分布式事务

分布式事务提供了一种机制,以确保在并发访问和部分故障的情况下数据更新的一致性。
  • Atomikos - 为 REST、SOA 和微服务提供事务支持,支持 JTA 和 XA。
  • Bitronix - 简单但完整的 JTA 1.1 API 实现。
  • Narayana - 提供传统 ACID 和补偿事务的支持,同时符合 JTA、JTS 等标准。(仅限 LGPL-2.1)
  • Seata - 在微服务架构下提供高性能且易于使用的分布式事务服务。

发行版

处理原生格式应用程序分发的工具。
  • Artipie - 二进制工件管理工具包,可在文件系统或 S3 上托管它们。
  • Boxfuse - 使用不可变基础设施原则将 JVM 应用程序部署到 AWS。
  • Capsule - 简单而强大的打包和部署。一个强化的 fat JAR,或是一个支持 JVM 优化容器的“Java Docker”。
  • 中央仓库 - 开源社区提供的最大二进制组件仓库,作为免费服务。Apache Maven 默认使用,并在所有其他构建工具中可用。
  • Cloudsmith - 完全托管的包管理 SaaS,支持 Maven/Gradle/SBT,提供免费套餐。
  • Getdown - 用于将 Java 应用部署到最终用户计算机并保持其更新的系统。作为 Java Web Start 的替代方案开发。
  • IzPack - 跨平台部署的安装创建工具。
  • JavaPackager - Maven 和 Gradle 插件,提供了一种简便的方法来将 Java 应用程序打包成原生 Windows、macOS 或 GNU/Linux 可执行文件,并为其生成安装程序。
  • jDeploy - 将桌面应用程序部署为原生 Mac、Windows 或 Linux 套件。
  • jlink.online - 通过 HTTP 构建优化的运行时。
  • Nexus - 具备代理和缓存功能的二进制管理。
  • packr - 用于在 Windows、Linux 和 macOS 上进行原生分发的 JAR、资源和 JVM 打包工具。
  • really-executable-jars-maven-plugin - 用于创建可执行 JAR 的 Maven 插件。

文档处理

辅助处理办公文档格式的库
  • Apache POI - 支持 OOXML(XLSX、DOCX、PPTX)以及 OLE2(XLS、DOC 或 PPT)。
  • documents4j - 使用第三方转换器(如 Microsoft Word)进行文档格式转换的 API。
  • docx4j - 创建和操作 Microsoft Open XML 文件。
  • fastexcel - 用于读取和写入大型 Excel(XLSX)工作表的性能库。
  • zerocell - 基于注释的 API,用于从 Excel 表格中读取数据到 POJO 对象,重点在于减少开销。

金融

与金融领域相关的库。

形式验证

形式化方法工具:证明助手、模型检查、符号执行等
  • CATG - 混合单元测试引擎。使用形式化方法自动生成单元测试。
  • Checker Framework - 可插拔的类型系统。包括空值类型、物理单位、不可变类型等。(仅 GPL-2.0 许可,附带 Classpath-exception-2.0)
  • Daikon - 检测可能的程序不变式,并基于这些不变式生成 JML 规范。
  • Java Path Finder (JPF) - JVM 形式化验证工具,包含模型检查器等。由 NASA 创建。
  • JMLOK 2.0 - 通过反馈导向的随机测试生成检测代码与 JML 规范之间的不一致性,并为每个检测到的非一致性提出可能的原因。(仅 GPL-3.0 许可)
  • KeY - 一种正式的软件开发工具,旨在尽可能无缝地集成面向对象软件的设计、实现、形式规范和形式验证。使用 JML 进行规范描述,并使用符号执行进行验证。(GPL-2.0 或更高版本)
  • OpenJML - 将 JML 规范转换为 SMT-LIB 格式,并将程序隐含的证明问题传递给后端求解器。(仅 GPL-2.0)

函数式编程

便于函数式编程的库。
  • Cyclops - 单子(Monad)和流工具、推导式(comprehensions)、模式匹配、函数式扩展(适用于所有 JDK 集合)、未来流(future streams)、跳板(trampolines)等更多功能。
  • derive4j - Java 8 注解处理器和框架,用于派生代数数据类型构造函数、模式匹配和同态。(仅限 GPL-3.0 许可)
  • Fugue - Guava 的函数式扩展。
  • Functional Java - 实现了众多基本和高级编程抽象,以协助面向组合的开发。
  • jOOλ - Java 8 的扩展,旨在通过提供众多缺失的类型和丰富的顺序 Stream API 扩展来填补 lambda 的空白。
  • Packrat - Java Stream API 的收集器库。收集器可以增强流的自定义中间操作。
  • protonpack - 流工具集合。
  • StreamEx - 增强 Java 8 Streams。
  • Vavr - 提供持久化数据类型和函数式控制结构的函数式组件库。

游戏开发

支持游戏开发的框架。
  • FXGL - JavaFX 游戏开发框架。
  • JBox2D - 著名 C++ 2D 物理引擎的移植版本。
  • jMonkeyEngine - 用于现代 3D 开发的游戏引擎。
  • libGDX - 全能跨平台、高级框架。
  • Litiengine - 基于 AWT 的轻量级 2D 游戏引擎。
  • LWJGL - 一个抽象了 OpenGL/CL/AL 等库的健壮框架。
  • Mini2Dx - 适合初学者,适合高手使用的框架,用于快速原型设计和构建 2D 游戏。
  • Void2D - 基于 Swing 的内置物理引擎的高级 2D 游戏引擎。
  • vulkan4j - Vulkan、OpenGL ES2 和 GLFW 内存分配器绑定。

地理空间

用于处理地理空间数据和相关算法的库
  • Apache SIS - 用于开发地理空间应用程序的库。
  • ArcGIS Maps SDK for Java - 用于向桌面应用程序添加地图和 GIS 功能的 JavaFX 库。
  • Geo - Java 中的 GeoHash 工具。
  • GeoTools - 提供地理空间数据工具的库。(仅限 LGPL-2.1)
  • GraphHopper - 路径规划引擎。可作为 Java 库或独立 Web 服务使用。
  • H2GIS - H2 数据库的空间扩展。(仅限 LGPL-3.0)
  • Jgeohash - 用于使用 GeoHash 算法的库。
  • Mapsforge - 基于 OpenStreetMap 数据的地图渲染。(仅限 LGPL-3.0)
  • Spatial4j - 通用空间/地理空间库。

GUI

用于创建现代图形用户界面的库
  • JavaFX - Swing 的继任者。
  • 场景构建器 - 用于 JavaFX 应用程序的可视化布局工具。
  • SnapKit - 一种现代的 Java UI 库,适用于桌面和网页。
  • Sierra - 轻量级声明式 DSL,用于快速开发 Swing 应用程序。
  • SWT - 图形组件工具包。

高性能

高性能计算的一切,从集合到特定库。
  • Agrona - 高性能应用中常见的复杂数据结构和实用方法。
  • Disruptor - 线程间消息传递库。
  • Eclipse Collections - 受 Smalltalk 启发的集合框架。
  • fastutil - 高效紧凑的类型特定集合。
  • HPPC - 基本集合
  • JCTools - 目前 JDK 中缺失的并发工具。
  • Koloboke - Java 集合框架的精心设计的扩展,包含原始类型特化和更多功能。

HTTP 客户端

辅助创建 HTTP 请求和/或绑定响应的库。
  • Apache HttpComponents - 面向 HTTP 及相关协议的低级 Java 组件工具集。
  • Async Http Client - 异步 HTTP 和 WebSocket 客户端库。
  • Avaje Http Client - 基于 JDK 11 的 HttpClient 的包装器,添加了 Feign 类似的接口以及其他增强功能。
  • Feign - 受 Retrofit、JAXRS-2.0 和 WebSocket 启发的 HTTP 客户端绑定器。
  • Google HTTP Client - 支持可插拔的 HTTP 传输抽象,支持 java.net.HttpURLConnection、Apache HTTP Client、Android、Google App Engine、XML、Gson、Jackson 和 Protobuf。
  • methanol - HTTP 客户端扩展库。
  • Retrofit - 安全的 REST 客户端。
  • Ribbon - 云端经过实战检验的客户端 IPC 库。
  • Riptide - Spring 的 RestTemplate 客户端响应路由。
  • unirest-java - 简洁、轻量级的 HTTP 客户端库。

超媒体类型

处理序列化为超媒体类型的库。
  • hate - 根据 HAL 规范构建超媒体友好的对象。
  • JSON-LD - JSON-LD 实现。
  • Siren4J - 用于 Siren 规范的库。
  • Spring HATEOAS - 独立和 Spring 支持,用于使用 HAL、HAL FORMS、Collection+JSON、ALPS 和 UBER 构建基于超媒体的 API。

IDE

尝试简化开发多个方面的集成开发环境。
  • Eclipse - 一个成熟的开放源码项目,支持大量插件和语言。
  • IntelliJ IDEA - 支持多种 JVM 语言,并为 Android 开发提供良好的选项。商业版面向企业领域。
  • jGRASP - 创建用于提供与调试器协同工作的软件可视化工具,如控制结构图、UML 类图和对象查看器。
  • NetBeans - 提供对多种 Java SE 和 EE 功能的集成,从数据库访问到 HTML5。
  • SnapCode - 基于浏览器的 Java 现代集成开发环境,专注于教育。
  • Visual Studio Code - 通过使用内部市场的扩展,为轻量级项目提供 Java 支持,具有简单、现代的工作流程。

图像

用于创建、评估或操作图形图像的库
  • Barcode-Lib4J - 生成 QR Code、DataMatrix 以及其他一维/二维条形码,支持矢量(PDF、EPS、SVG)和栅格(PNG、BMP、JPG)图像,具有 DPI 感知、高精度和 CMYK 色彩模型支持。
  • Imgscalr - 简单、高效且硬件加速的纯 Java 2D 图像缩放库。
  • Tess4J - Tesseract OCR API 的 JNA 封装。
  • Thumbnailator - 高质量缩略图生成库。
  • TwelveMonkeys - 一系列扩展支持的图像文件格式的插件集合。
  • ZXing - 支持多种格式的 1D/2D 条形码图像处理库。
  • image-comparison - 比较两个相同尺寸的图像并直观显示差异的库,通过绘制矩形来展示不同之处。图像的某些部分可以排除在比较之外。
  • vips-ffm - libvips 的全面绑定,使用 Java 的"Foreign Function & Memory" API。
  • scrimage - 一个不可变、函数式且性能优越的 JVM 图像处理库。

Introspection

帮助简化 Java 内省和反射 API 使用的库。
  • ClassGraph - ClassGraph(前身为 FastClasspathScanner)是一个超快速、超轻量级、并行化的 Java、Scala、Kotlin 和其他 JVM 语言的类路径扫描器和模块扫描器。
  • jOOR - jOOR 代表 jOOR 面向对象反射。它是一个简单的 java.lang.reflect 包的包装器。
  • Mirror - Mirror 是为了解决一个简单的问题而创建的,这个问题通常被称为 ReflectionUtil,几乎在所有依赖反射来执行高级任务的项目中都能找到。
  • Objenesis - 允许动态实例化而不需要默认构造函数,例如具有必需参数、副作用或抛出异常的构造函数。
  • ReflectASM - ReflectASM 是一个非常小的 Java 库,通过使用代码生成来提供高性能的反射功能。
  • Reflections - Reflections 扫描您的类路径,索引元数据,允许您在运行时查询它,并且可以保存并收集您项目中许多模块的信息。

任务调度

用于调度后台任务的库。
  • JobRunr - 任务调度库,使用 lambda 表达式进行即发即忘、延迟和周期性任务。通过乐观锁保证由单个调度器实例执行。具有持久化、最小依赖性和可嵌入的特性。
  • Quartz - 功能丰富的开源作业调度库,可集成到几乎任何 Java 应用程序中。
  • Sundial - 轻量级框架,用于简单定义作业、定义触发器并启动调度器。
  • Wisp - 简单的库,占用空间小,API 直观。
  • db-scheduler - 持久化且支持集群的调度器。
  • easy-batch - 通过简单的处理流程设置批处理作业。记录按顺序从数据源读取,经过流程处理,批量写入数据汇。
  • shedlock - 确保您的计划任务在同一时间内最多执行一次。如果一个任务在一个节点上正在执行,它会获取一个锁,这会阻止从另一个节点或线程执行相同的任务。

JSON

用于将 JSON 序列化和反序列化为 Java 对象的库。
  • Avaje Jsonb - 通过源代码生成实现无反射的 Json 绑定,支持类似 Jackson 的注解。
  • DSL-JSON - 具有高级编译时数据绑定的 JSON 库。
  • Genson - 强大且易于使用的 Java 到 JSON 转换库。
  • Gson - 将对象序列化为 JSON,反之亦然。具有出色的即时使用性能。
  • HikariJSON - 高性能 JSON 解析器,比 Jackson 快 2 倍。
  • jackson-modules-java8 - 用于 Java 8 数据类型和特性的 Jackson 模块集。
  • Jackson-datatype-money - 用于支持 JavaMoney 数据类型的 JSON 序列化和反序列化的开源 Jackson 模块。
  • Jackson - 类似于 GSON,但如果你需要更频繁地实例化库,则可以提供性能提升。
  • JSON-io - 将 Java 转换为 JSON/TOON 以及反向转换。支持复杂对象图、循环引用以及 TOON 格式,可节省 40-50% 的 LLM token。
  • jsoniter - 高速且灵活的库,具有迭代器和懒解析 API。
  • LoganSquare - 基于 Jackson 流式 API 的 JSON 解析和序列化库。性能优于 GSON 和 Jackson 库。
  • Moshi - 现代 JSON 库,较少主观性,使用内置类型如 List 和 Map。
  • Yasson - 类和 JSON 文档之间的绑定层,类似于 JAXB。
  • fastjson - 非常快的处理器,无需额外依赖,支持完整的数据绑定。
  • Jolt - JSON 到 JSON 转换工具。
  • JsonPath - 使用类似 XPATH 的语法从 JSON 中提取数据。
  • JsonSurfer - 专门用于处理大型和复杂 JSON 数据的流式 JsonPath 处理器。

JVM 和 JDK

当前的 JVM/JDK 实现。
  • Which JDK - 常见 JVM 的优缺点概述。
  • 采用 Open JDK - 社区驱动的 OpenJDK 构建,包括 HotSpot 和 OpenJ9。
  • Corretto - 亚马逊提供的免费、多平台、生产就绪的 OpenJDK 发行版。(仅限 GPL-2.0,含 Classpath-exception-2.0)
  • Dragonwell8 - 针对在线电子商务、金融、物流应用优化的 OpenJDK 后继版本。
  • Graal - 多语言嵌入式 JVM。(仅限 GPL-2.0,含 Classpath-exception-2.0)
  • Liberica JDK - 基于 OpenJDK 构建,经过彻底测试并通过了 JCK。 (仅 GPL-2.0,含 Classpath-exception-2.0)
  • OpenJ9 - 高性能、企业级,灵活许可、开放治理的跨平台 JVM,扩展和增强了来自 Eclipse OMR 和 OpenJDK 项目的运行时技术组件。
  • Open JDK - Open JDK 社区主页。 (仅 GPL-2.0,含 Classpath-exception-2.0)
  • ParparVM - 非阻塞、并发 GC 的 iOS 虚拟机。 (仅 GPL-2.0,含 Classpath-exception-2.0)
  • RedHat Open JDK - RedHat 的 OpenJDK 发行版。(GPL-2.0-only WITH Classpath-exception-2.0)
  • SAP Machine - SAP 提供的免费、经过严格测试并经过 JCK 验证的 OpenJDK 友好分支。(GPL-2.0-only WITH Classpath-exception-2.0)
  • Zulu - Windows、Linux 和 macOS 的 OpenJDK 构建版本。(GPL-2.0-only WITH Classpath-exception-2.0)
  • Microsoft JDK - Microsoft 构建的 OpenJDK,免费、开源、新鲜出炉!

日志记录

记录应用程序行为的库。
  • Apache Log4j 2 - 完全重写,具有强大的插件和配置架构。
  • Echopraxia - API 围绕结构化日志、丰富的上下文和条件日志设计。有 Logback 和 Log4J2 的实现,但 Echopraxia 的 API 完全无依赖,意味着它可以用任何日志 API 实现。
  • Graylog - 开源聚合器,适用于扩展的角色和权限管理。(仅 GPL-3.0)
  • Kibana - 分析和可视化日志文件。某些功能需要付费。
  • Logback - 基于 Groovy 的强大日志库,具有有趣的配置选项。
  • Logbook - 可扩展的开源库,用于 HTTP 请求和响应日志记录。
  • Logstash - 管理日志文件的工具。
  • p6spy - 无需修改代码即可对所有 JDBC 事务进行日志记录。
  • SLF4J - 抽象层/简单的日志门面。
  • tinylog - 轻量级日志框架,具有静态日志类。
  • OpenTracing Toolbox - 基于 OpenTracing 构建的一组库,为现有 instrumentations 提供扩展和插件。
  • Flogger - Flogger 是一个用于 Java 的流畅式日志 API。它支持多种功能,并且相较于现有的日志 API 具有许多优势。

机器学习

提供特定统计算法以从数据中学习的工具。
  • Apache Flink - 快速、可靠、大规模数据处理引擎。
  • Apache Mahout - 专注于协同过滤、聚类和分类的可扩展算法。
  • DatumBox - 提供多种算法和预训练模型用于自然语言处理。
  • Deeplearning4j - 分布式和多线程深度学习库。
  • DJL - 高级且与引擎无关的深度学习框架。
  • H2O - 大数据分析的统计引擎。
  • Intelligent java - 可编程地与远程深度学习和语言模型无缝集成。
  • JSAT - 用于预处理、分类、回归和聚类的算法,支持多线程执行。(仅限 GPL-3.0 许可)
  • m2cgen - 将模型编译为本机代码的命令行工具。
  • Neureka - 一个轻量级、跨平台的、OpenCL 加速的 nd-array/张量库。
  • oj! Algorithms - 用于数据科学、机器学习和科学计算所需的高性能数学、线性代数和优化。
  • Oryx 2 - 用于构建实时、大规模机器学习应用的框架。包括协同过滤、分类、回归和聚类等端到端应用。
  • Siddhi - 云原生的流处理和复杂事件处理引擎。
  • Smile - 统计机器智能与学习引擎提供了一套机器学习算法和可视化库。
  • Tribuo - 提供分类、回归、聚类、模型开发等工具,并与其他库如 scikit-learn、pytorch 和 TensorFlow 接口。
  • Weka - 数据挖掘任务算法集合,从预处理到可视化。 (GPL-3.0-only)

消息

辅助在客户端之间发送消息以确保协议独立性的工具。
  • Aeron - 高效、可靠的单播和多播消息传输。
  • Apache ActiveMQ - 实现 JMS 的消息代理,将同步通信转换为异步通信。
  • Apache Camel - 通过企业集成模式将不同的传输 API 集成在一起。
  • Apache Kafka - 高吞吐量分布式消息系统。
  • Apache Pulsar - 分布式发布/订阅消息系统。
  • Apache RocketMQ - 快速、可靠且可扩展的分布式消息平台。
  • Apache Qpid - Apache Qpid 提供支持 AMQP 协议的消息工具,并支持多种语言和平台。
  • AutoMQ - AutoMQ 是一个云原生、无服务器的 Kafka 改进版本,易于扩展、无需管理和具有成本效益。
  • Emissary - 简单、轻量级且快速的通信库,用于解耦消息(请求和事件)和消息处理器。
  • EventBus - 简单的发布/订阅事件总线。
  • Hermes - 基于 Kafka 构建的高效可靠的消息代理。
  • JeroMQ - ZeroMQ 的实现。
  • Nakadi - 在 Kafka 之上提供 RESTful API。
  • RabbitMQ Java client - RabbitMQ 客户端。
  • Smack - 跨平台的 XMPP 客户端库。
  • NATS 客户端 - NATS 客户端。

微服务

用于创建和管理微服务的工具。
  • ActiveRPC - 轻量级且高效的库,适用于复杂高负载分布式应用和类似 Memcached 的解决方案。
  • Armeria - 基于 Java 8、Netty、HTTP/2、Thrift 和 gRPC 构建的异步 RPC/REST 客户端/服务器库。
  • consul-api - Consul API 的客户端:一个分布式、高可用性和数据中心感知的注册/发现服务。
  • Eureka - 基于 REST 的服务注册中心,用于弹性负载均衡和故障转移。
  • Helidon - 两种风格的微服务编写方法:函数式反应式和作为 MicroProfile 的实现。
  • JDA - Discord REST API 及其 WebSocket 事件的封装。
  • KeenType - 基于 Java 的新排版系统现代化版本,该系统很大程度上基于 Donald E. Knuth 最初的 TeX。
  • kubernetes-client - 通过流畅的 DSL 提供对完整 Kubernetes 和 OpenShift REST API 的访问。
  • Micronaut - 注重模块化、最小内存占用和启动时间的现代全栈框架。
  • Nacos - 用于构建云原生应用的动态服务发现、配置和服务管理平台。
  • OpenAI-Java - 用于使用 OpenAI 的 GPT-3 API 的 Java 库。
  • Quarkus - 专为 HotSpot 和 Graal VM 定制的 Kubernetes 堆栈。
  • Sentinel - 流量控制组件,为微服务提供可靠性、弹性和监控。

其他

其他所有内容。
  • CQEngine - Java 集合上的超快速、类似 SQL 的查询。
  • Design Patterns - 最常见的设计模式的实现和解释。
  • FF4J - Java 功能标志。
  • FizzBuzz Enterprise Edition - 严肃的商业人士为严肃的商业目的所制作的 FizzBuzz 的无废话实现。(无明确许可)
  • IP2Location.io Java SDK - IP2Location.io 地理位置 API 和 IP2WHOIS 域名 WHOIS API 的包装器。
  • ISBN core - 一个包含 ISBN-10 和 ISBN-13 的表示对象以及解析、验证和格式化它们的工具的小型库。
  • J2ObjC - 用于将 Android 库移植到 iOS 的 Java 到 Objective-C 翻译器。
  • JBake - 静态网站生成器。
  • JBang - JBang 使使用 Java 进行脚本编写变得容易。它允许您使用单个文件进行代码和依赖管理,并允许您直接运行它。
  • JBot - 用于构建聊天机器人的框架。(GPL-3.0-only)
  • JCuda - JCuda 提供了 CUDA 和 CUDA 相关库的 Java 绑定。
  • JEmoji - 一个自动生成的表情符号库,提供类型安全的直接访问表情符号,并支持 Discord、Slack、GitHub 等平台的别名功能。
  • Jimfs - 内存文件系统。
  • JObfuscator![c] - 源代码混淆器。
  • Joda-Money - JDK 未提供的货币和金钱类及算法。
  • jOOX - org.w3c.dom 包的简单封装,允许使用受 jQuery 启发的 API 进行流畅的 XML 文档创建和操作。
  • JPad - 代码片段运行器。
  • jsweet - 源代码转换器到 TypeScript/JavaScript。
  • Maven Wrapper - Maven 的 Gradle Wrapper 类似物,允许在不安装 Maven 的情况下构建项目。
  • Membrane Service Proxy - 开源的反向代理框架。
  • MinimalFTP - 轻量级、小巧且可定制的 FTP 服务器。
  • LittleProxy - 基于 Netty 的事件驱动网络库构建的高性能 HTTP 代理。
  • 现代 Java - Java 8 指南 - 流行的 Java 8 指南。
  • Modernizer - 检测使用遗留 Java API 的情况。
  • OctoLinker - 浏览器扩展,可以更高效地在 GitHub 上导航代码。
  • OpenRefine - 用于处理混乱数据的工具:清理、转换、通过 Web 服务扩展并链接到数据库。
  • PipelinR - 一个用于在管道中使用处理程序和命令的小型工具库。
  • Polyglot for Maven - Maven 3.3.1+ 的扩展,允许使用非 XML 的方言编写 POM 模型。
  • RR4J - RR4J 是一个记录 Java 字节码执行的工具,并允许开发人员本地重播。
  • Simple Java Mail - 具有干净且流畅 API 的邮件发送工具。
  • Smooks - 基于片段的消息处理框架。(Apache-2.0 或 LGPL-3.0 或更高版本)
  • Svix - 用于发送 webhook 和验证签名的 Svix API 库。
  • Togglz - 功能开关模式实现。
  • TypeTools - 用于解析泛型类型的工具。
  • webcam-capture - 用于在 Java 中直接使用内置和外部摄像头的库。
  • XMLBeam - 通过代码中的注解或 XPath 处理 XML。
  • yGuard - 通过重命名和缩减进行混淆。

移动开发

用于创建或管理移动应用程序的工具。
  • Codename One - 跨平台解决方案,用于编写原生移动应用程序。(GPL-2.0-only WITH Classpath-exception-2.0)
  • MobileUI - 跨平台框架,用于使用 Java 和 Kotlin 开发具有原生 UI 的移动应用程序。
  • Multi-OS Engine - 开源跨平台引擎,用于开发原生移动应用程序(iOS、Android 等)。

监控

通过提供遥测数据来观察/监控生产环境中的应用程序的工具。
  • Apitally - 专为 Spring Boot 应用程序设计的简单、注重隐私的 API 监控、分析和请求日志记录工具。
  • Automon - 结合了 AOP 的强大功能与监控和/或日志记录工具。
  • 启动使用 Spring Boot Starter - 提供应用程序启动和运行时指标,包括 JVM 运行时间、内存使用率和 CPU 负载的 Spring Boot Actuator 扩展。
  • Datadog - 现代监控与分析。
  • Dropwizard Metrics - 通过 JMX 或 HTTP 暴露指标,并将它们发送到数据库。
  • Failsafe Actuator - 在 Spring-Boot 环境中对 Failsafe 电路断路器进行开箱即用的监控。
  • Glowroot - 开源 Java APM。
  • HertzBeat - 实时监控系统,支持自定义监控和无需代理。
  • hippo4j - 动态且可观察的线程池框架。
  • inspectIT - 通过可动态修改的钩子捕获详细的运行时信息。它支持通过 OpenTracing API 在多个系统之间进行跟踪,并可以将数据与用户监控相关联。
  • Instrumental - 实时 Java 应用程序性能监控。一项商业服务,提供免费的开发者账户。
  • Jaeger client - Jaeger 客户端。
  • JavaMelody - 性能监控和剖析。
  • jmxtrans - 连接到多个 JVM 并通过 JMX 查询它们的属性。其查询语言基于 JSON,允许非 Java 程序员访问 JVM 属性。支持不同的输出写入,包括 Graphite、Ganglia 和 StatsD。
  • Jolokia - 基于 REST 的 JMX
  • Micrometer - 中立厂商的指标/可观察性外观,用于最流行的指标/可观察性库。
  • Micrometer Tracing - 中立厂商分布式追踪接口,支持最流行的追踪库。
  • nudge4j - 通过字节码注入,从浏览器为 Java 8 提供远程开发者控制台。
  • OpenTelemetry - 用于 instrument、生成、收集和导出遥测数据,以帮助您分析软件的性能和行为。
  • Pinpoint - 开源 APM 工具。
  • Prometheus - 提供多维数据模型、DSL、自主服务器节点等更多功能。
  • Sentry - 与Sentry集成,这是一个应用错误跟踪和性能分析平台。
  • SPM - 用于 JVM 应用程序的分布式事务跟踪性能监控工具。
  • Stagemonitor - 用于 JVM 应用程序的开源性能监控和事务跟踪工具。
  • Sysmon - 轻量级 Java 虚拟机平台监控工具。
  • zipkin - 分布式跟踪系统,收集微服务架构中解决延迟问题所需的时序数据。

本地

用于处理平台特定的本地库。
  • Aparapi - 将字节码转换为 OpenCL,允许在 GPU 上执行。
  • JavaCPP - 提供高效且易于访问的本地 C++。
  • JNA - 无需编写 JNI 即可与原生库进行交互。还提供了对常见系统库的接口。
  • JNR - 无需编写 JNI 即可与原生库进行交互。还提供了对常见系统库的接口。与 JNA 目标相同,但更快,并将作为即将到来的Project Panama的基础。
  • native-lib-loader - 用于从 Java 中提取和加载原生库的原生库加载器。

自然语言处理

专门处理文本的库。
  • CogCompNLP - 为纯文本输入提供常用标注器。(研究与学术使用许可)
  • CoreNLP - 提供一组用于词性标注、命名实体识别和情感分析等任务的工具。(GPL-3.0 或更高版本)
  • DKPro - 可重用 NLP 工具集合,用于语言预处理、机器学习、词汇资源等。
  • Hypherator - Java 分词库,具有类似迭代器的接口。可以直接使用 - 包含多种语言的字典。
  • LingPipe - 用于从词性标注到情感分析的多种任务的工具包。

网络编程

用于构建网络服务器的库
  • Commons-networking - 用于服务器发送事件(SSE)的客户端。
  • Comsat - 将标准 Java 网络相关 API 与 Quasar 纤维和演员集成。
  • Dubbo - 高性能 RPC 框架。
  • Grizzly - NIO 框架。用作 Glassfish 中的网络层。
  • gRPC-java - 基于 protobuf 和 HTTP/2 的 RPC 框架。
  • KryoNet - 提供简洁的 API,使用 NIO 和 Kryo 实现高效的 TCP 和 UDP 客户端/服务器网络通信。
  • MINA - 用于 TCP/IP 和 UDP/IP 网络操作的抽象、事件驱动的异步 I/O API,通过 Java NIO 实现。
  • Netty - 用于构建高性能网络应用的框架。
  • Drift - 易于使用、基于注解的库,用于创建 Thrift 客户端和可序列化类型。
  • ServiceTalk - 基于 Netty 构建的框架,提供针对特定协议的 API,并支持多种编程范式。
  • sshj - 程序化使用 SSH、SCP 或 SFTP。
  • TLS Channel - 实现 SSLEngine 上的 ByteChannel 接口,提供易于使用的(类似套接字)TLS。
  • Undertow - 基于 NIO 提供阻塞和非阻塞 API 的 Web 服务器。在 WildFly 中用作网络层。(仅限 LGPL-2.1)
  • urnlib - 代表、解析和编码 URN,符合 RFC 2141。(仅限 GPL-3.0)
  • Fluency - 高吞吐量数据摄取日志记录器,用于 Fluentd 和 Fluent Bit。

ORM

处理对象持久化的 API。
  • Apache Cayenne - 提供一个干净、静态的数据访问 API。还包括一个用于处理数据库映射的 GUI 模型器,以及数据库反向工程和生成。
  • Doma - 在编译时通过注解处理验证并生成源代码的数据库访问框架,以及称为双向 SQL 的原生 SQL 模板。
  • Ebean - 提供简单快速的数据访问。
  • EclipseLink - 支持多种持久化标准:JPA、JAXB、JCA 和 SDO。
  • Hibernate - 功能强大且广泛使用,拥有活跃的社区。(仅限 LGPL-2.1 许可)
  • MyBatis - 将对象与存储过程或 SQL 语句相结合。
  • MyBatis-Plus - MyBatis 的强大增强工具包,用于简化开发。
  • ObjectiveSql - 一种用于快速开发和约定优于配置的 ActiveRecord ORM。
  • Permazen - 自然语言持久化层。
  • SimpleFlatMapper - 简单数据库和 CSV 映射器。

PaaS

Java 平台即服务。

路径规划

图论和空间环境中查找路径的算法和库。
  • Pathetic - 一个高度可配置的 3D A*路径查找库,使用特定优化以实现高性能。

PDF

用于处理 PDF 文件的工具。
  • Apache FOP - 从 XSL-FO 创建 PDF 文件。
  • Apache PDFBox - 用于创建和操作 PDF 的工具箱。
  • Dynamic Jasper - JasperReports 的抽象层。(仅限 LGPL-3.0)
  • DynamicReports - 简化 JasperReports。(仅限 LGPL-3.0)
  • Eclipse BIRT - 用于创建 PDF 和其他格式(DOCX、XLSX、HTML 等)的报告引擎,使用基于 Eclipse 的可视化编辑器。
  • flyingsaucer - XML/XHTML 和 CSS 2.1 渲染器。(LGPL-2.1 或更高版本)
  • iText - 可编程创建 PDF 文件。
  • JasperReports - 复杂的报表引擎。(仅限 LGPL-3.0)
  • Open HTML to PDF - 基于 flyingsaucer 和 Apache PDFBox,正确支持现代 PDF 标准。
  • OpenPDF - iText 的开源分支。(仅限 LGPL-3.0 和 MPL-2.0)
  • Tabula - 从 PDF 文件中提取表格。

性能分析

性能分析、剖析和基准测试工具。
  • fastThread - 使用免费的基于云的上传界面分析和可视化线程转储。
  • GCeasy - 分析和可视化 GC 日志的工具。它提供免费的基于云的上传界面。
  • honest-profiler - 低开销、无偏见的采样剖析工具。
  • jHiccup - 记录和记录平台 JVM 停滞。
  • JITWatch - 分析 HotSpot JVM 所做的 JIT 编译器优化。
  • JMH - 用于构建、运行和分析用 Java 和其他针对 JVM 的语言编写的纳秒/微秒/毫秒/宏基准测试的工具包。(仅限 GPL-2.0 与 Classpath-exception-2.0)
  • LatencyUtils - 用于延迟测量和报告的工具。

平台

包含多个类别库的框架套件。

Apache Commons

  • BCEL - Byte Code Engineering Library - 分析、创建和操作 Java 类文件。
  • BeanUtils - Java 反射和内省 API 的易用包装器。
  • BeanUtils2 - Commons BeanUtils 的重新设计。
  • BSF - Bean 脚本框架 - 脚本语言接口,包括 JSR-223。
  • Chain - 责任链模式实现。
  • ClassScan - 在不加载的情况下查找类接口、方法、字段和注解。
  • CLI - 命令行参数解析器。
  • CLI2 - Commons CLI 的重新设计。
  • Codec - 通用编码/解码算法,例如语音、base64 或 URL。
  • Collections - 扩展或增强 Java 集合框架。
  • Compress - 定义了一个用于处理 tar、zip 和 bzip2 文件的 API。
  • Configuration - 读取多种格式的配置/首选项文件。
  • Convert - Commons-Convert 旨在提供一个单一的库,专门用于将一种类型的对象转换为另一种类型。
  • CSV - 用于读取和写入逗号分隔值文件的组件。
  • Daemon - unix-daemon 样 Java 代码的替代调用机制。
  • DBCP - 数据库连接池服务。
  • DbUtils - JDBC 辅助库。
  • Digester - XML 到 Java 对象映射工具。
  • Email - 用于从 Java 发送电子邮件的库。
  • Exec - 用于处理 Java 中外部进程执行和环境管理的 API。
  • FileUpload - 为您的 servlet 和 Web 应用程序提供文件上传功能。
  • Finder - 受 UNIX find 命令启发的 Java 库。
  • Flatfile - 用于处理扁平数据结构的 Java 库。
  • Functor - 可作为对象进行操作的函数,或表示单个通用函数的对象。
  • Graph - 通用图 API 和算法。
  • I18n - 添加了本地化消息包的功能,该包由一个或多个属于同一组的本地化文本组成。
  • Id - Id 是一个用于生成标识符的组件。
  • Imaging - 图像库。
  • IO - I/O 工具集合。
  • Javaflow - 用于捕获应用程序状态的 Continuation 实现。
  • JCI - Java 编译器接口。
  • JCS - Java 缓存系统。
  • Jelly - 基于 XML 的脚本和处理引擎。
  • Jexl - 扩展了 JSTL 表达式语言的通用表达式语言。
  • JNet - JNet 允许通过 java.net API 动态注册 URL 流处理程序。
  • JXPath - 使用 XPath 语法操作 Java Beans 的工具。
  • Lang - 为 java.lang 中的类提供附加功能。
  • 日志记录 - 各种日志 API 实现的包装器。
  • 数学 - 轻量级、自包含的数学和统计组件。
  • 监控 - 监控旨在为 Java 应用程序提供一个简单但可扩展的监控解决方案。
  • Nabla - Nabla 提供自动微分类,可以生成用 Java 语言实现的任何函数的导数。
  • Net - 网络工具和协议实现的集合。
  • OGNL - 对象图导航语言。
  • OpenPGP - 使用 OpenPGP 签名和验证数据的接口。
  • Performance - 微基准客户端的小型框架,包含 Commons DBCP 和 Pool 的实现。
  • Pipeline - 提供一组围绕工作队列设计的管道工具,这些队列并行运行以顺序处理数据对象。
  • Pool - 通用对象池组件。
  • Proxy - 用于创建动态代理的库。
  • RDF - RDF 1.1 的通用实现,可以在 JVM 上实现的系统。
  • RNG - Commons Rng 提供伪随机数生成器的实现。
  • SCXML - State Chart XML 规范的实现,旨在创建和维护 Java SCXML 引擎。
  • Validator - 框架,用于在 XML 文件中定义验证器和验证规则。
  • VFS - 虚拟文件系统组件,将文件、FTP、SMB、ZIP 等视为单一逻辑文件系统。
  • Weaver - 提供了一种简便的方式来增强(编织)编译后的字节码。

其他

  • CUBA Platform - 基于 Spring、EclipseLink 和 Vaadin 的企业应用高级框架,具有丰富的 Web 界面。
  • Light-4J - 快速、轻量级且高效的服务框架,内置安全功能。
  • Orienteer - 开源商业应用平台,用于快速配置/开发 CRM、ERP、LMS 等应用。
  • Spring - 提供许多用于依赖注入、面向切面编程、安全等方面的软件包。

流程

帮助管理操作系统进程的库
  • ch.vorburger.exec - Apache Commons Exec 的便捷 API。
  • zt-exec - 提供了一个统一的 API 来访问 Apache Commons Exec 和 ProcessBuilder。
  • zt-process-killer - 停止从 Java 启动或通过 PID 的系统进程。

反应式库

用于开发响应式应用程序的库。
  • Akka - 用于构建并发、分布式、容错和事件驱动应用程序的工具包和运行时。
  • Reactive Streams - 提供异步流处理的非阻塞背压标准。
  • Reactor - 用于在 JVM 上构建非阻塞应用程序的框架,提供响应式编程支持。
  • RxJava - 允许使用可观察序列组合异步和基于事件的程序。
  • vert.x - 多语言事件驱动应用程序框架。

REST 框架

专门用于创建 RESTful 服务的框架。
  • Dropwizard - 基于 Jetty、Jackson、Jersey 和 Metrics 的现代 Web 应用构建的声明性框架。
  • Elide - 基于 JPA 数据模型的 JSON 或 GraphQL-API 的声明性框架。
  • Jersey - JAX-RS 参考实现。
  • Microserver - 适用于 Spring 和 Spring Boot 的便捷、可扩展的微服务插件系统。拥有超过 30 个插件且持续增长,它支持微单体和纯微服务两种风格。
  • Rapidoid - 简单、安全且极快的框架,包含嵌入式 HTTP 服务器、GUI 组件和依赖注入。
  • rest.li - 用于构建健壮、可扩展的 RESTful 架构的框架,采用类型安全的绑定和异步、非阻塞 IO,提供端到端的开发者工作流程,促进干净的做法、统一的接口设计和一致的数据建模。
  • RESTEasy - 完全认证且可移植的 JAX-RS 规范实现。
  • RestExpress - JBoss Netty HTTP 栈的轻量级封装,提供可扩展性和高性能。
  • Restlet Framework - 具有强大路由和过滤功能的先驱框架,以及统一的客户端和服务器 API。
  • Spark - 受 Sinatra 启发的框架。
  • Crnk - JSON API 规范的实现,用于构建具有排序、过滤、分页、链接、对象图、类型安全、批量更新、集成等功能的资源导向 REST 端点。
  • springdoc-openapi - 使用 Spring Boot 项目自动生成 API 文档。
  • Swagger - 标准、语言无关的 REST API 接口。
  • openapi-generator - 根据一个 OpenAPI 规范自动生成 API 客户端库、SDK、服务器桩、文档和配置。

科学

科学计算、分析和可视化库。
  • BioJava - 通过提供生物信息学中常用的算法、文件格式解析器、测序和 3D 可视化功能,促进生物数据处理。
  • Chart-FX - 专注于性能优化的科学图表库,支持 25 Hz 更新频率的大数据集实时数据可视化。
  • DataMelt - 科学计算、数据分析和数据可视化的环境。(GPL-3.0-or-later)
  • Erdos - 模块化、轻量级且易于使用的理论算法图框架。
  • GraphStream - 用于建模和分析动态图的库。
  • JFreeChart - 用于 Swing、JavaFX 和服务器端应用程序的 2D 图表库。(仅限 LGPL-2.1)
  • JGraphT - 提供数学图论对象和算法的图库。
  • JGraphX - 用于可视化(主要为 Swing)和交互节点-边图的库。
  • jSciPy - jSciPy 是一个用于科学计算的 Java 库,提供了受流行科学计算库启发的功能。目前它提供了信号处理模块,包括 Butterworth 滤波器、峰值查找算法以及用于常微分方程的 RK4 求解器。
  • LogicNG - 用于创建、操作和求解布尔和伪布尔公式的库。
  • Mines Java Toolkit - 用于地球物理科学计算、可视化和数字信号分析的库。
  • Morpheus - 提供了一种通用的二维内存高效表格数据结构,称为 DataFrame,以支持在 JVM 上进行高效的内存分析,用于科学计算。
  • Orekit - 一个低级航天飞行动力学库,提供基本元素(轨道、日期、姿态、坐标系等)以及各种算法(转换、传播、指向等)来处理它们。
  • Orson-Charts - 生成各种 3D 图表,可以在 Swing 和 JavaFX 中显示,或导出为 PDF、SVG、PNG 和 JPEG。(仅限 GPL-3.0)
  • Tablesaw - 包括一个数据帧、一个嵌入式列存储以及数百种方法来转换、汇总或过滤数据。
  • XChart - 轻量级数据绘图库。提供多种可定制的图表类型。

搜索

用于文档搜索和分析的索引引擎。
  • Apache Lucene - 高性能、功能全面、跨平台、文本搜索引擎库。
  • Apache Solr - 面向高流量优化的企业级搜索引擎。
  • Elasticsearch - 分布式、支持多租户、全文本搜索引擎,具有 RESTful 网络界面和无需模式的 JSON 文档。
  • Indexer4j - 简单轻量级全文索引和搜索库。

安全

处理安全、认证、授权或会话管理的库
  • Apache Shiro - 执行身份验证、授权、加密和会话管理。
  • Ayza - 高级 SSL 配置构建器,用于配置使用 SSL/TLS 的 HTTP 客户端和服务器。
  • Bouncy Castle - 全功能加密库和 JCA 提供程序,提供从基本辅助功能到 PGP/SMIME 操作的广泛功能。
  • DependencyCheck - 检测项目依赖项中公开披露的漏洞。
  • Cryptomator - 跨平台、透明、客户端加密云文件。(仅 GPL-3.0 授权)
  • Hdiv - 运行时应用程序,抵御 OWASP Top 10 中包含的应用程序安全风险,包括 SQL 注入、跨站脚本、跨站请求伪造、数据篡改和暴力破解攻击。
  • jjwt - Java 和 Android 的 JSON Web 令牌。
  • jwt-java - 轻松创建和解析 JSON Web 令牌,并使用流畅的 API 创建自定义 JWT 验证器。
  • Jwks RSA - JSON Web Key Set 解析器。
  • Kalium - Networking and Cryptography (NaCl) 库的绑定。
  • Keycloak - 浏览器应用程序和 RESTful Web 服务的集成式 SSO 和 IDM。
  • Keywhiz - 用于分发和管理密钥的系统。
  • Nbvcxz - 高级密码强度评估。
  • OACC - 提供基于权限的授权服务。
  • OpenAM - 访问管理解决方案,包括身份验证、单点登录、授权、联合、权限和 Web 服务安全。
  • OTP-Java - 基于 RFC 4226(HOTP)和 RFC 6238(TOTP)的一次性密码生成库
  • pac4j - 安全引擎。
  • Passay - 通过将候选密码与可配置的规则集进行验证来强制执行密码策略。
  • Password4j - 用户友好的加密库,支持 Argon2、Bcrypt、Scrypt、PBKDF2 以及各种其他加密哈希函数。
  • SecurityBuilder - 用于 JCA 和 JSSE 类的流畅构建器 API,特别是 X.509 证书。
  • Themis - 跨平台高级加密库,提供易于使用的加密功能以保护敏感数据:具有前向保密性的安全消息传递,安全数据存储(AES256GCM);适用于构建端到端加密应用程序。
  • Tink - 提供简单且防误用的 API,用于常见加密任务。
  • Topaz - 应用程序的细粒度授权,支持 RBAC、ABAC 和 ReBAC。

序列化

处理序列化效率高的库。
  • FlatBuffers - 内存高效的序列化库,可以直接访问序列化数据而无需解包和解析。
  • FST - JDK 兼容的高性能对象图序列化。
  • Fury - 由 JIT 和零拷贝支持的高速对象图序列化框架。
  • Kryo - 快速高效的对象图序列化框架。
  • MessagePack - 高效的二进制序列化格式。
  • PHP Serializer - 以 PHP 序列化格式序列化对象。

服务器

专门用于部署应用程序的服务器。
  • Apache Tomcat - 功能强大、通用的 Servlet 和 JSP 服务器。
  • Apache TomEE - Tomcat 加上 Java EE。
  • Jetty - 提供 Web 服务器和 javax.servlet 容器,支持 HTTP/2、WebSocket、OSGi、JMX、JNDI、JAAS 以及其他许多集成。
  • nanohttpd - 小型、易于嵌入的 HTTP 服务器。
  • WildFly - 曾被称为 JBoss,由 Red Hat 开发,提供广泛的 Java EE 支持。(仅限 LGPL-2.1)

模板引擎

用于在模板中替换表达式的工具。
  • FreeMarker - 基于模板和可变数据生成文本输出(HTML 网页、电子邮件、配置文件、源代码等)的库。
  • Handlebars.java - 无逻辑的语义性 Mustache 模板。
  • Jade4J - Pug(曾被称为 Jade)的实现。
  • Jamal - 可扩展的模板引擎,嵌入到 Maven/JavaDoc 中,支持多种扩展(Groovy、Ruby、JavaScript、JShell、PlantUml),并支持片段处理。
  • jstachio - Typesafe Mustache 模板引擎。
  • jte - 编译为类,并使用易于理解的语法,提供多种功能以简化开发,并实现快速执行和小占用空间。
  • Jtwig - 模块化、可配置且经过全面测试的模板引擎。
  • Pebble - 受 Twig 启发,并以其继承功能及其易于阅读的语法而区别于其他模板引擎。它内置了自动转义功能以增强安全性,并集成了对国际化的支持。
  • Rocker - 优化、内存高效且快速的模板引擎,生成静态类型、普通的对象。
  • StringTemplate - 用于生成源代码、网页、电子邮件或任何其他格式化文本输出的模板引擎。
  • Thymeleaf - 旨在成为 JSP 的替代品,并适用于 XML 文件。

测试

从模型到视图进行测试的工具

异步

简化异步服务测试的工具.
  • Awaitility - 用于同步异步操作的 DSL。
  • ConcurrentUnit - 测试多线程和异步应用程序的工具包。
  • GreenMail - 内存电子邮件服务器,用于集成测试。支持 SMTP、POP3 和 IMAP,包括 SSL。(仅限 GPL-2.0 许可)
  • Hoverfly Java - Hoverfly 的原生绑定,Hoverfly 是一个代理,允许您模拟 HTTP 服务。
  • Karate - 结合 API 自动化测试、模拟和性能测试的 DSL,使测试 REST/HTTP 服务变得简单。
  • REST Assured - 用于轻松测试 REST/HTTP 服务的 DSL。
  • WebTau - 在 REST-API、Graph QL、浏览器、数据库、CLI 和业务逻辑上进行测试,使用一致的匹配器和概念。

BDD

针对软件开发过程进行的测试,该过程起源于 TDD,并深受 DDD 和 OOAD 的影响.
  • Cucumber - 提供了一种用普通语言描述功能的方法,客户可以理解。
  • Cukes-REST - 使用 Cucumber 进行 REST 服务测试的 Gherkin 步骤集合。
  • J8Spec - 遵循类似 Jasmine 的语法。
  • JBehave - 可配置性极强的框架,用于描述故事。
  • JGiven - 提供一种流畅的 API,允许更简单的组合。
  • Lamdba Behave - 致力于提供一种流畅的 API,用于以长而描述性的句子编写测试,这些句子读起来像普通的英语。
  • Serenity BDD - 自动化验收测试和报告库,与 Cucumber、JBehave 和 JUnit 一起工作,使编写高质量的执行规范更加容易。

测试夹具

与随机数据的创建和处理相关的一切
  • AutoParams - 支持生成测试数据或组合场景用于参数化测试。
  • Beanmother - 从 YAML 配置文件设置 bean。
  • Datafaker - 基于 Java Faker 的现代伪造数据生成器分支。
  • Fixture Factory - 从模板生成伪造对象。
  • jFairy - 伪造数据生成器。
  • Instancio - 通过生成完全填充的、可重复的对象来自动化单元测试中的数据设置。包含 JUnit 5 扩展。
  • Randomized Testing - 用于以伪随机方式运行 JUnit 测试的 JUnit 测试运行器和插件。
  • Java Faker - Ruby 的伪造数据生成器的移植版本。
  • Mockneat - 另一个伪造数据生成器。
  • JMock - JMock 是一个用 Java 实现的高性能数据生成和模拟组件库。

框架

提供针对特定用例的测试运行环境
  • Apache JMeter - 功能测试和性能测量。
  • JMeter DSL.java - 使用 JMeter 进行负载测试,就像使用 JUnit 测试一样简单。
  • Arquillian - 用于 Java EE 容器的集成和功能测试平台。
  • BitDive - 零代码集成测试平台,可从运行时应用程序行为生成测试。
  • cdi-test - 用于轻松高效测试 CDI 组件的 JUnit 扩展。
  • Citrus - 专注于客户端和服务器端消息的集成测试框架。
  • Gatling - 易于使用、可维护且高性能的负载测试工具。
  • JUnit - 常用的测试框架。
  • jqwik - 基于 JUnit 5 构建的性质测试引擎。
  • Pact JVM - 消费者驱动的契约测试。
  • PIT - 快速变异测试框架,用于评估现有 JUnit 或 TestNG 测试套件的故障检测能力。
  • weld-testing - 一组测试框架扩展(JUnit 4、JUnit 5、Spock),通过 Weld 增强对 CDI 组件的测试。支持 Weld 5。
  • selenium - 浏览器自动化框架和生态系统。

Matchers

提供自定义匹配器的库。
  • AssertJ - 提高可读性的流畅断言。
  • Hamcrest - 可组合的匹配器,用于创建灵活的意图表达式。
  • JSONAssert - 简化 JSON 字符串的测试。
  • JsonUnit - 简化测试中 JSON 比较的库。
  • Truth - Google 的流畅断言和命题框架。
  • XMLUnit - 简化 XML 输出的测试。

杂项

与测试相关的一些其他事项
  • ConsoleCaptor - 用于单元测试目的的捕获控制台输出。
  • junit-dataprovider - JUnit 的 TestNG 样式的数据提供器/运行器。
  • junit-pioneer - JUnit 5 扩展包,推动木星的前沿。
  • LogCaptor - 用于单元测试目的捕获日志条目。
  • log-capture - 捕获日志条目并为单元和集成测试提供断言。
  • Mutability Detector - 报告给定类的实例是否是不可变的。
  • pojo-tester - 自动对基本 POJO 方法进行测试。(仅限 LGPL-3.0)
  • raml-tester - 测试请求/响应是否与给定的 RAML 定义匹配。
  • Selfie - 快照测试(内联和磁盘上)。
  • Stebz - 用于测试步骤管理的多方法框架。
  • Testcontainers - 提供可一次性使用的常见数据库、Selenium 网络浏览器或任何其他可在 Docker 容器中运行的实例。

Mocking

用于模拟协作对象以帮助测试单个、隔离单元的工具。
  • JMockit - 集成测试、API 模拟和伪造、以及代码覆盖率。
  • Mockito - 允许您使用干净且简单的 API 编写测试的模拟框架。
  • MockServer - 允许模拟与 HTTPS 集成的系统。
  • Moco - 简洁的用于存根和模拟的 Web 服务。
  • PowerMock - 模拟静态方法、构造函数、final 类和方法、私有方法,以及移除静态初始化器。
  • WireMock - 模拟和存根 Web 服务。
  • EasyMock - EasyMock 是一个 Java 库,提供了一种简单的方法来在单元测试中使用 Mock 对象。

工具

提供通用实用函数的库。
  • Arthas - 允许在不修改代码或重启服务器的情况下,为应用程序进行生产问题排查。
  • bucket4j - 基于令牌桶算法的速率限制库。
  • cactoos - 面向对象原语集合。
  • Chocotea - 从 Java 代码生成 Postman 集合、环境和集成测试。
  • CRaSH - 提供一个运行 CRaSH 的 JVM 的 shell。被 Spring Boot 等使用。(LGPL-2.1-or-later)
  • Dex - 能够进行强大的 ETL 和数据可视化的 Java/JavaFX 工具。
  • dregex - 使用确定性有限自动机的正则表达式引擎。它支持一些 Perl 风格的功能,同时保持线性匹配时间,并提供集合操作。
  • Embulk - 批量数据加载工具,帮助在不同数据库、存储、文件格式和云服务之间进行数据传输。
  • fswatch - 微型库,用于监视目录文件系统变化,简化 java.nio.file.WatchService。
  • Gephi - 跨平台工具,用于可视化和操作大型图网络。(仅 GPL-3.0 许可)
  • Guava - 集合、缓存、原始类型支持、并发库、常用注解、字符串处理、I/O 等。
  • JADE - 用于构建和调试多智能体系统的框架和环境。(仅限 LGPL-2.0)
  • Javadoc Publisher - 从您的 maven/gradle 项目生成 Javadoc,并自动部署到 GitHub Page。
  • Java Diff Utils - 用于文本或数据比较和补丁的实用工具。
  • JavaVerbalExpressions - 帮助构建复杂正则表达式的库。
  • JGit - 轻量级,纯 Java 实现的 Git 版本控制系统库。
  • JKScope - 受 Kotlin 启发的 Java 范围函数。
  • minio-java - 提供简单的 API 来访问任何 Amazon S3 兼容的对象存储服务器。
  • Protégé - 提供一个本体编辑器和一个构建基于知识的系统的框架。
  • Semver4j - 轻量级库,帮助您以不同模式处理语义版本控制。
  • Underscore-java - Underscore.js 函数的移植。

版本管理器

帮助创建开发环境并在不同 Java 版本之间切换的工具。
  • jabba - 受 nvm 启发的 Java 版本管理器。支持 macOS、Linux 和 Windows。
  • jenv - 受 rbenv 启发的 Java 版本管理器。可以全局配置或按项目配置。在 Debian 和 macOS 上经过测试。
  • SDKMan - 受 RVM 和 rbenv 启发的 Java 版本管理器。支持基于 UNIX 的平台和 Windows。

网络爬虫

分析网站内容的库。
  • Apache Nutch - 高度可扩展、高度可伸缩的生产环境网络爬虫。
  • Crawler4j - 简单轻量级网络爬虫。
  • jsoup - 采集、解析、操作和清理 HTML。
  • StormCrawler - 用于构建低延迟和高可扩展网络爬虫的 SDK。
  • webmagic - 具备下载、URL 管理、内容提取和持久化功能的高可扩展爬虫。

Web 框架

处理 Web 应用程序各层之间通信的框架
  • ActiveJ - 一种轻量级异步框架,专为开发高性能网络应用程序而设计。
  • Apache Tapestry - 一种面向组件的框架,用于创建动态、健壮、高度可扩展的网络应用程序。
  • Apache Wicket - 一种基于组件的网络应用程序框架,类似于 Tapestry,具有状态 GUI。
  • Blade - 一种轻量级、模块化的框架,旨在优雅和简单。
  • Bootique - 一个为可运行应用程序设计的极简主义框架。
  • Firefly - 异步框架,用于快速开发高性能 Web 应用程序。
  • Javalin - 用于 Web 应用的微框架。
  • Jooby - 可扩展、快速且模块化的微型框架,提供多种编程模型。
  • Ninja - 全栈式网络框架。
  • Pippo - 小型、高度模块化、类似 Sinatra 的框架。
  • Play - 基于 Akka 构建,为 Java 和 Scala 中的高可扩展应用程序提供可预测且资源消耗极低(CPU、内存、线程)。
  • PrimeFaces - 具有免费和商业/支持版本的 JSF 框架及前端组件。
  • Ratpack - 一套简化快速、高效、可扩展且经过充分测试的 HTTP 应用程序的库。
  • Takes - 基于真正面向对象编程和不可变性的主观性 Web 框架。
  • Vaadin - 全栈开源 Java 框架,简化 Web 应用开发。仅使用 Java 即可构建复杂、交互式应用程序,并通过 TypeScript 和 React 组件进行增强,无需深入 JavaScript、CSS 或 HTML 专业知识。
  • WebForms Core - 一种从服务器管理 HTML 标签的技术。
  • Erupt - 基于注释的低代码与 JPA 可视化

工作流编排引擎

  • Cadence - 来自 Uber 的有状态代码平台。
  • flowable - 紧凑高效的流程和业务流程管理平台。
  • Temporal - 微服务编排平台,源自 Cadence 但基于 gRPC。

资源

相关的 Awesome 列表

Awesome 列表与 Java & JVM 生态系统相关。

社区

活跃讨论

前端

提供此列表前端界面的网站。请注意,不会有一个官方网站。我们不与特定网站关联,并且每个人都可以创建一个。

有影响力的书籍

那些产生了重大影响且仍然值得阅读的书籍。

播客和屏幕录制

编程时可以查看或收听的内容

人物

社交媒体

活跃账户以关注。来自他们社交媒体的描述。
  • Adam Bien - 自由撰稿人,JavaOne 明星演讲者,顾问,Java 大师。
  • Aleksey Shipilëv - 性能专家,基准测试之王,并发问题猎人。
  • Antonio Goncalves - Java 大师,JUG 领导者,Devoxx 法国,Java EE 6/7,JCP,作者。
  • Arun Gupta - Java 大师,JavaOne 明星,JUG 领导者,Devoxx4Kids 专家,Couchbase 开发者倡导部副总裁。
  • Brian Goetz - Oracle 的 Java 语言架构师。
  • Bruno Borges - Oracle 的产品经理/Java 爱好者。
  • Chris Engelbert - 开源爱好者、演讲者、开发者、TimescaleDB 开发者倡导者。
  • Chris Richardson - 软件架构师、顾问和连续创业者,Java Champion,JavaOne Rock Star,*POJOs in Action-作者。
  • Ed Burns - Oracle 技术顾问成员。
  • Eugen Paraschiv - Spring Security 课程作者。
  • Heinz Kabutz - Java Champion,演讲者,The Java Specialists' Newsletter 作者,并发性能专家。
  • Holly Cummins - IBM 伦敦 Bluemix Garage 技术主管,Java Champion,开发者,作者,JavaOne 明星。
  • James Weaver - Java/JavaFX/IoT 开发者,作者和演讲者。
  • Java - 官方 Java Twitter 账号。
  • Javin Paul - 著名 Java 博主。
  • Josh Long - Pivotal 的 Spring 倡导者,O'Reilly 的《云原生 Java》和《使用 Spring Boot 构建微服务》的作者,JavaOne 星光人物。
  • Lukas Eder - Java 大师,演讲者,Data Geekery(jOOQ)的创始人和 CEO。
  • Mani Sarkar - Java 冠军,多语言开发者,软件工匠,参与@graalvm 项目,专注于人工智能/机器学习/深度学习、数据科学、开发者社区,同时也是演讲者和博主。创建了几个很棒的资源列表,比如这个。
  • Mario Fusco - RedHatter,JUG 协调员,频繁的演讲者和作者。
  • Mark Heckler - Pivotal 首席技术专家和开发者布道师,会议演讲者,已出版作家,以及 Java 大师,专注于物联网和云计算。
  • Markus Eisele - Java EE 布道师,Red Hat。
  • Martijn Verburg - 伦敦 JUG 联合领导者、演讲者、作者、Java Champion,等等。
  • Martin Thompson - 脸色苍白的性能恶棍。
  • Monica Beckwith - 性能顾问,JavaOne 明星。
  • OpenJDK - 官方 OpenJDK 账号。
  • Peter Lawrey - Peter Lawrey,Java 性能专家。
  • Randy Shoup - Stitch Fix 工程副总裁,演讲者,JavaOne 明星。
  • Reza Rahman - Java EE/GlassFish/WebLogic 布道师,作者,演讲者,开源黑客。
  • Sander Mak - Java Champion,作者。
  • Simon Maple - Java Champion,VirtualJUG 创始人,LJC 领导者,RebelLabs 作者。
  • Spencer Gibb - 软件工程师,父亲,极客,Pivotal 公司 Spring Cloud Core 联合创始人和负责人。
  • Stephen Colebourne - Java Champion,演讲者。
  • Trisha Gee - Java Champion 和演讲者。
  • Venkat Subramaniam - 作者,休斯顿大学教授,微软 MVP 奖获得者,JavaOne 摇滚明星,Java 冠军。
  • Vlad Mihalcea - Java 冠军,致力于 Hypersistence Optimizer 开发,数据库爱好者,著有《高性能 Java 持久化》书籍。

网站

阅读网站
😀 😊 😵‍💫 😡 🤝 🙏 👍 👎 ❤️