Java资源大全中文版-Awesome - java

本文来自GitHub 上 Awesome - java 系列的资源整理。

awesome-java是 akullpp 发起维护的 Java 资源列表,内容包括:构建工具、数据库、框架、模板、安全、代码分析、日志、第三方库、书籍、Java 站点等等。

目录

  • Java资源大全中文版
    • 古董级工具
    • 构建工具
    • 字节码操作
    • 集群管理
    • 代码分析
    • 编译器生成工具
    • 外部配置工具
    • 约束满足问题求解程序
    • 持续集成
    • CSV解析
    • 数据结构
    • 数据库
    • 时间日期工具库
    • 依赖注入
    • 开发流程增强工具
    • 分布式应用
    • 分布式数据库
    • 发布
    • 文档处理工具
    • 函数式编程
    • 游戏开发
    • GUI
    • 高性能计算
    • IDE
    • 图像处理
    • JSON
    • JVM与JDK
    • 基于JVM的语言
    • 日志
    • 机器学习
    • 消息传递
    • 杂项
    • 应用监控工具
    • 原生开发库
    • 自然语言处理
    • 网络
    • ORM
    • PDF
    • 性能分析
    • 响应式开发库
    • REST框架
    • 科学计算与分析
    • 搜索引擎
    • 安全
    • 序列化
    • 应用服务器
    • 模板引擎
    • 测试
    • 通用工具库
    • 网络爬虫
    • Web框架
    • 业务流程管理套件
  • 资源
    • 社区
    • 有影响力的书
    • 播客
    • 微博、微信公众号
    • Twitter
    • 知名网站

古董级工具

这些工具伴随着Java一起出现,在各自辉煌之后还在一直使用。

  • Apache Ant:基于XML的构建管理工具。官网
  • cglib:字节码生成库。官网
  • GlassFish:应用服务器,由Oracle赞助支持的Java EE参考实现。官网
  • Hudson:持续集成服务器,目前仍在活跃开发。官网
  • JavaServer Faces:Mojarra是JSF标准的一个开源实现,由Oracle开发。官网
  • JavaServer Pages:支持自定义标签库的网站通用模板库。官网
  • Liquibase:与具体数据库独立的追踪、管理和应用数据库Scheme变化的工具。官网

构建工具

构建及应用依赖关系处理工具。

  • Apache Maven:Maven是一款声明式构建及依赖管理工具,采用约定优于配置方式进行管理。相对Apache Ant更推荐使用Maven,前者采用了过程式管理,维护相对困难。官网
  • Bazel:来自Google的构建工具,可以快速、可靠地构建代码。官网
  • Gradle:使用Groovy(非XML)进行增量构建,可以很好地与Maven依赖管理配合工作。官网
  • Buck:Facebook构建工具。官网

字节码操作

编程方式操作字节码的开发库。

  • ASM:通用底层字节码操作和分析开发库。官网
  • Byte Buddy:使用流式API进一步简化字节码生成。官网
  • Byteman:在运行时通过DSL(规则)操作字节码进行测试和故障排除。官网
  • Javassist:一个简化字节码编辑尝试。官网

集群管理

在集群内动态管理应用程序的框架。

  • Apache Aurora:Apache Aurora是一个Mesos框架,用于长时间运行服务和定时任务(cron job)。官网
  • Singularity:Singularity是一个Mesos框架,方便部署和操作。它支持Web Service、后台运行、调度作业和一次性任务。官网

代码分析

测量代码指标和质量工具。

  • Checkstyle:代码编写规范和标准静态分析工具。官网
  • Error Prone:将常见编程错误作为运行时错误报告。官网
  • FindBugs:通过字节码静态分析查找隐藏bug。官网
  • jQAssistant:使用基于Neo4J查询语言进行代码静态分析。官网
  • PMD:对源代码分析查找不良的编程习惯。官网
  • SonarQube:通过插件集成其它分析组件,对过去一段时间内的数据进行统计。官网

编译器生成工具

用来创建解析器、解释器或编译器的框架。

  • ANTLR:复杂的全功能自顶向下解析框架。官网
  • JavaCC:JavaCC是更加专门的轻量级工具,易于上手且支持语法超前预测。官网

外部配置工具

支持外部配置的开发库。

  • config:针对JVM语言的配置库。官网
  • owner:减少冗余配置属性。官网

约束满足问题求解程序

帮助解决约束满足问题的开发库。

  • Choco:可直接使用的约束满足问题求解程序,使用了约束规划技术。官网
  • JaCoP:为FlatZinc语言提供了一个接口,可以执行MiniZinc模型。官网
  • OptaPlanner:业务规划与资源调度优化求解程序。官网
  • Sat4J:逻辑代数与优化问题最先进的求解程序。官网

持续集成

  • Bamboo:Atlassian解决方案,可以很好地集成Atlassian的其他产品。可以选择开源许可,也可以购买商业版。官网
  • CircleCI:提供托管服务,可以免费试用。官网
  • Codeship:提供托管服务,提供有限的免费模式。官网
  • fabric8:容器集成平台。官网

你可能感兴趣的:(Java)