Java的特点是百花齐放,不像c#或者go只有一家主导。oracle jdk收费了,没关系,不是只有它可用。java还有很多免费的主流的jdk发行版本,记录下来备忘。

OpenJDK - 官方网站 - 源代码 - 文档 - 下载地址

OpenJDK是其他所有jdk发行版的基础,可以用于开发和测试,但不建议将它用于Java生产环境。

Temurin(AdoptOpenJDK) - 官方网站 - 源代码 - 文档 - 下载地址

Temurin由Eclipse开源基金会旗下的Adoptium工作组维护,基于openjdk构建的免费的jdk发行版(之前是AdoptOpenJDK),可用于在Java生产环境中替代oracle jdk。

IBM Semeru Runtime - 官方网站 - 源代码 - 文档 - 下载地址

Semeru是由IBM基于openjdk构建的免费jdk发行版,jvm采用IBM开源的openj9,性能优越,大幅减小Java应用程序的内存占用。推荐用于生产环境,是代替oracle jdk的优秀选择。

Amazon Corretto - 官方网站 - 源代码 - 文档 - 下载地址

Corretto是由亚马逊维护的基于openjdk的免费的jdk生产就绪版本,提供长期支持,其中包括性能增强和安全修复。在亚马逊内部有数以千计的Java应用程序基于Corretto执行,支撑亚马逊电子商务网站和aws在Linux上高速稳定运行。

阿里巴巴龙井(Dragonwell) - 官方网站 - 源代码 - 文档 - 下载地址

龙井(Dragonwell)是由中国著名的电子商务公司阿里巴巴主导开源的openjdk发行版,阿里巴巴的主要业务都运行在基于Linux和Dragonwell的Java应用程序上。

毕昇JDK - 官方网站 - 源代码 - 文档 - 下载地址

毕昇JDK是中国领先的科技公司华为内部基于OpenJDK定制的Huawei JDK的开源版本,运行在华为内部500多个产品上。毕昇JDK是一款高性能、可用于生产环境的OpenJDK发行版。它对华为内部Java应用场景中遇到的一些性能问题和稳定性问题进行了修复,并在ARM架构上进行了性能优化和稳定性增强,在ARM架构上更稳定,在大数据等场景下可以获得更好的性能。

腾讯 Kona JDK - 官方网站 - 源代码 - 文档 - 下载地址

Kona JDK是中国领先的互联网公司腾讯基于 OpenJDK 定制开发的 JDK 版本,广泛服务于腾讯内部业务和腾讯云上客户,经过了内部大数据和AI等复杂业务场景的验证,为腾讯 Java 生态提供专业持续的保障,具有稳定性高、安全性高、性能好等特点。

微软OpenJDK - 官方网站 - 源代码 - 文档 - 下载地址

您没看错,是它,曾经与Java为敌的微软也有基于OpenJDK的构建版本。微软首次向 OpenJDK 贡献代码是在 2014 年。2018年甲骨文将 OpenJDK 的源码库迁移至 GitHub,当时的 GitHub 刚刚被微软收购,此后微软与 OpenJDK 的关系也更进了一步。

Azul Zulu - 官方网站 - 源代码 - 文档 - 下载地址

Azul Zulu是Java标准版(“Java SE”)规范的开源实现。它是OpenJDK开源项目的二进制构建,有免费版本和收费的商业支持版本。Azul号称是全球最大的 OpenJDK商业版提供商,世界唯一100% 基于 Java 的公司。提供世界上最安全、最稳定的 OpenJDK 版本。

SapMachine - 官方网站 - 源代码 - 文档 - 下载地址

SapMachine是由SAP基于OpenJDK构建的免费的下游版本。它用于为希望使用OpenJDK运行Java应用程序的SAP客户和合作伙伴构建和维护SAP支持的OpenJDK版本。

Liberica JDK - 官方网站 - 源代码 - 文档 - 下载地址

Liberica JDK是一个100%开源的Java实现。它是由BellSoft基于OpenJDK构建的,并且所有Liberica版本都包含JavaFX

GraalVM - 官方网站 - 源代码 - 文档 - 下载地址

与其他jdk发行版不同,GraalVM是一个通用虚拟机,由oracle开发并开源。它可以运行用JavascriptPython、Ruby、R、基于JVM的语言(如Java、Scala、Groovy、Kotlin、Clojure)和基于LLVM的语言(例如C和C++)编写的应用程序。GraalVM消除了编程语言之间的隔离,并实现了共享运行时中的互操作性。它可以像Go语言一样把java程序打包为本机可执行程序直接运行,也可以像OpenJDK一样作为运行时来运行java程序。

Oracle JDK - 官方网站 - 源代码 - 文档 - 下载地址

在sun被oracle收购以后,很多人以为Java就是Oracle JDK。其实,跟其他OpenJDK发行版一样,它只是Java平台标准版的一种实现。所谓Java收费了,只是oracle JDK收费了,其他jdk仍可以免费使用。

免费的Java主流jdk发行版本有哪些?的更多相关文章

  1. idea Error : java 不支持发行版本5

    问题描述 在Intellij idea中新建了一个Maven项目,运行时报错如下:Error : java 不支持发行版本5 解决 1.在Intellij中点击"File" --& ...

  2. 如何在Oracle官网下载java的JDK最新版本和历史版本

    官网上最显眼位置只显示了Java SE的JDK的最新版本下载链接,因为都是英文,如果英文不是很好,寻找之前的JDK版本需要很长时间,而且未必能在那个隐蔽的位置找到之前版本列表. 今天小编来给你详细讲解 ...

  3. Java (JDK 多版本切换)—— Windows平台

    0. 背景 常常在不同的应用中需要用到不同版本的Java ,需要切换不同JAVA_HOME. 1. 方法 Step 1. 安装不同版本的JDK(JRE),最好都安装在一个Java目录分支下.例如: S ...

  4. 新建maven工程运行出现Intellij idea 报错:Error : java 不支持发行版本5

    Step1点击: 点击 保持一致: Step2点击 这样就可以了. 主要是运行时jdk版本不一致的问题

  5. Intellij idea 报错:Error : java 不支持发行版本5

    保证下面几个地方编译版本一致: 分两步: 第一步,进入Project Structure中设置Project JDK 以及Project Level ,高于JDK5版本 第二步,进入设置中将项目的JD ...

  6. 运行连接Oracle数据库时,Idea报错: Error : java 不支持发行版本5

    按照上面的截图步骤,一步步往下走,再运行程序时就不会报错了. 原文链接:https://blog.csdn.net/qq_22076345/article/details/82392236 感谢原文作 ...

  7. idea报错:Error:java不支持发行版本5的解决方法

    将以下对应配置一致即可. File-->Project Structure File-->Settings

  8. Error java 错误 不支持发行版本5 ( 完美解决版)

    问题 在Intellij idea中新建了一个Maven项目,运行时报错如下:Error : java 不支持发行版本5 解决方案 1. 原因 是因为ideal中默认配置中有几个地方的jdk版本与实际 ...

  9. Error:java: 错误: 不支持发行版本 5

    本文链接:https://blog.csdn.net/wo541075754/article/details/70154604 在Intellij idea中新建了一个Maven项目,运行时报错如下: ...

  10. 轻松搭建自己的Linux发行版本

    许多人想要搭建自己的Linux发行版本,可能是觉得有趣,也可能是为了学习更多的Linux知识,或者因为他们有很正式的问题要解决.但是秘密是:自己搭建完美的发行版本不是很困难的一件事.事实上,我们收集了 ...

随机推荐

  1. WPF 框架开发 ColumnDefinition 和 RowDefinition 的代码在哪

    我的 VisualStudio 在更新到 2022 就构建不通过 WPF 仓库,提示我在 Grid 的代码里面找不到 ColumnDefinitionCollection 和 RowDefinitio ...

  2. Raft 共识算法4-选举限制

    Raft 共识算法4-选举限制 Raft算法中译版地址:https://object.redisant.com/doc/raft中译版-2023年4月23日.pdf 英原论文地址:https://ra ...

  3. Codeforces Good Bye 2023

    A. 2023 正常签到. void solve() { int n, k, ok = 1; cin >> n >> k; int t = 2023; while(n --) ...

  4. 使用.NET查询日出日落时间

    在WPF中,通过资源文件实现主题切换是个常见的功能,有不少文章介绍了如何实现手动切换主题.那如何实现自动切换主题呢?通常有两种机制:一是跟随系统明暗主题切换,二是像手机操作系统那样根据日出日落时间自动 ...

  5. nim 4. 模块

    看了一下nim的模块系统,真的非常简洁. 1) 一个nim文件就是一个模块 2) 通过import 引入模块,引入的时候不需要带扩展名, 比如有个模块 mod1.nim,  引入的时候: import ...

  6. nmcli device status状态为unmanaged

    遇到报错:(device lo not available because device is strictly unmanaged) nmcli device status 查看设备状态 nmcli ...

  7. vue3创建工程

    创建 Vue3 项目的步骤如下: 安装 Node.js Vue3 需要依赖 Node.js 环境,因此需要先安装 Node.js.可以从官网下载 Node.js 的安装包并安装,也可以使用包管理器安装 ...

  8. 线程中使用for循环的add或remove方法的两种方案

    简介 (Introduction): 背景 在使用线程中添加list的元素时,使用add或remove就会产生异常. 分析 该list每当删除/添加一个元素时,集合的size方法的值都会减小1,这将直 ...

  9. js RGB转HSV

    function rgb2hsv (r,g,b) { var computedH = 0; var computedS = 0; var computedV = 0; //remove spaces ...

  10. 京东面试:SpringBoot同时可以处理多少请求?

    Spring Boot 作为 Java 开发中必备的框架,它为开发者提供了高效且易用的开发工具,所以和它相关的面试题自然也很重要,咱们今天就来看这道经典的面试题:SpringBoot同时可以处理多少个 ...