![57ddefbac1f9f76b0c734180c867ee36.png](https://i-blog.csdnimg.cn/blog_migrate/56cb60608d446e8af2b08f92efd45363.jpeg)
![a13fdf37dd69e44416393a9c06f352b0.png](https://i-blog.csdnimg.cn/blog_migrate/98ede0927375137e8a0abfc141f0df0e.jpeg)
古董级工具
这些工具伴随着Java一起出现,在各自辉煌之后还在一直使用。
Apache Ant:基于XML的构建管理工具。官网
构建工具
构建及应用依赖关系处理工具。
Apache Maven:Maven是一款声明式构建及依赖管理工具,采用约定优于配置方式进行管理。相对Apache Ant更推荐使用Maven,前者采用了过程式管理,维护相对困难。官网
字节码操作
编程方式操作字节码的开发库。
ASM:通用底层字节码操作和分析开发库。官网
集群管理
在集群内动态管理应用程序的框架。
Apache Aurora:Apache Aurora是一个Mesos框架,用于长时间运行服务和定时任务(cron job)。官网
代码分析
测量代码指标和质量工具。
Checkstyle:代码编写规范和标准静态分析工具。官网
编译器生成工具
用来创建解析器、解释器或编译器的框架。
ANTLR:复杂的全功能自顶向下解析框架。官网
外部配置工具
支持外部配置的开发库。
config:针对JVM语言的配置库。官网
约束满足问题求解程序
帮助解决约束满足问题的开发库。
Choco:可直接使用的约束满足问题求解程序,使用了约束规划技术。官网
持续集成
Bamboo:Atlassian解决方案,可以很好地集成Atlassian的其他产品。可以选择开源许可,也可以购买商业版。官网
CSV解析
简化CSV数据读写的框架与开发库
uniVocity-parsers:速度最快功能最全的CSV开发库之一,同时支持TSV与固定宽度记录的读写。官网
数据库
简化数据库交互的相关工具。
Apache Phoenix:HBase针对低延时应用程序的高性能关系数据库层。官网
数据结构
Apache Parquet:Google Dremel论文中发布的基于组装算法的列式(Columnar)存储格式。官网
时间日期工具库
处理时间和日期的开发库。
Joda-Time:在Java 8发布前,Joda-Time是实际使用的时间日期库标准。官网
依赖注入
帮实现依赖翻转范式的开发库。 官网
Apache DeltaSpike:CDI扩展框架。官网
开发流程增强工具
从最基本的层面增强开发流程。
ADT4J:针对代数数据类型的JSR-269代码生成器。官网
分布式应用
用来编写分布式容错应用的开发库和框架。
Akka:用来编写分布式容错并发事件驱动应用程序的工具和运行时。官网
分布式数据库
对应用程序而言,在分布式系统中的数据库看起来就像是只有一个数据源。
Apache Cassandra:列式数据库,可用性高且没有单点故障。官网
文档处理工具
处理Office文档的开发库。
Apache POI:支持OOXML规范(XLSX、DOCX、PPTX)以及OLE2规范(XLS、DOC、PPT)。官网
函数式编程
函数式编程支持库。
Cyclops:支持一元(Monad)操作和流操作工具类、comprehension(List语法)、模式匹配、trampoline等特性。官网
![7232eac4d897b6da39c06a301eecdba8.png](https://i-blog.csdnimg.cn/blog_migrate/23869dcf6ee0ff7b219d6c31e0abe1f0.png)
游戏开发
游戏开发框架。
LWJGL:对OpenGL/CL/AL等技术进行抽象的健壮框架。官网
GUI
现代图形化用户界面开发库。
Scene Builder:开发JavaFX应用的可视化布局工具。官网
高性能计算
涵盖了从集合到特定开发库的高性能计算相关工具。
Agrona:高性能应用中常见的数据结构和工具方法。官网
IDE
简化开发的集成开发环境。
Eclipse:老牌开源项目,支持多种插件和编程语言。官网
图像处理
创建、评价和操作图片的支持库。
Imgscalr:纯Java 2D实现,简单、高效、支持硬件加速的图像缩放开发库。官网
JSON
简化JSON处理的开发库。
Genson:强大且易于使用的Java到JSON转换开发库。官网
JVM与JDK
目前的JVM和JDK实现。
JDK 9:JDK 9的早期访问版本。官网
基于JVM的语言
除Java外,可以用来编写JVM应用程序的编程语言。
Scala:融合了面向对象和函数式编程思想的静态类型编程语言。官网
日志
记录应用程序行为日志的开发库。
Apache Log4j 2:使用强大的插件和配置架构进行完全重写。官网
机器学习
提供具体统计算法的工具。其算法可从数据中学习。
Apache Flink:快速、可靠的大规模数据处理引擎。官网
消息传递
在客户端之间进行消息传递,确保协议独立性的工具。
Aeron:高效可扩展的单播、多播消息传递工具。官网
杂项
未分类其它资源。
Design Patterns:实现并解释了最常见的设计模式。官网
应用监控工具
监控生产环境中应用程序的工具。
AppDynamics:性能监测商业工具。官网
原生开发库
用来进行特定平台开发的原生开发库。
JNA:不使用JNI就可以使用原生开发库。此外,还为常见系统函数提供了接口。官网
自然语言处理
用来专门处理文本的函数库。
Apache OpenNLP:处理类似分词等常见任务的工具。官网
网络
网络编程函数库。
Async Http Client:异步HTTP和WebSocket客户端函数库。官网
![e5bd62ce8522210506ecba835a746971.png](https://i-blog.csdnimg.cn/blog_migrate/79e40fe916e61301692c5af02130af59.jpeg)
ORM
处理对象持久化的API。
Ebean:支持快速数据访问和编码的ORM框架。官网
用来帮助创建PDF文件的资源。
Apache FOP:从XSL-FO创建PDF。官网
性能分析
性能分析、性能剖析及基准测试工具。
jHiccup:提供平台中JVM暂停的日志和记录。官网
响应式开发库
用来开发响应式应用程序的开发库。
Reactive Streams:异步流处理标准,支持非阻塞式反向压力(backpressure)。官网
REST框架
用来创建RESTful 服务的框架。
Dropwizard:偏向于自己使用的Web框架。用来构建Web应用程序,使用了Jetty、Jackson、Jersey和Metrics。官网
科学计算与分析
用于科学计算和分析的函数库。
DataMelt:用于科学计算、数据分析及数据可视化的开发环境。官网
搜索引擎
文档索引引擎,用于搜索和分析。
Apache Solr:一个完全的企业搜索引擎。为高吞吐量通信进行了优化。官网
序列化
用来高效处理序列化的函数库。
FlatBuffers:高效利用内存的序列化函数库,无需解包和解析即可高效访问序列化数据。官网
应用服务器
用来部署应用程序的服务器。
Apache Tomcat:针对Servlet和JSP的应用服务器,健壮性好且适用性强。官网
模板引擎
在模板中替换表达式的工具。
Apache Velocity:提供HTML页面模板、email模板和通用开源代码生成器模板。官网
Thymeleaf:旨在替换JSP,支持XML文件的工具。官网
![4a0009f3ec04b76b094227b8c481c33d.png](https://i-blog.csdnimg.cn/blog_migrate/7d7112f5af7a752d76649db643591703.jpeg)
测试
测试内容从对象到接口,涵盖性能测试和基准测试工具。
Apache JMeter:功能性测试和性能评测。官网
通用工具库
通用工具类函数库。
Apache Commons:提供各种用途的函数,比如配置、验证、集合、文件上传或XML处理等。官网
Web框架
用于处理Web应用程序不同层次间通讯的框架。
Apache Tapestry:基于组件的框架,使用Java创建动态、强健的、高度可扩展的Web应用程序。官网
业务流程管理套件
流程驱动的软件系统构建。
jBPM:非常灵活的业务流程管理框架,致力于构建开发与业务分析人员之间的桥梁。官网