
宇宙区长
2022/11/10阅读:17主题:默认主题
javaJdk说明
JDK和JRE的关系
JDK就是java开发工具,包含jre jre是java运行时,时java程序运行的最简单的环境

JDK版本的变换过程
JDK11之前的jdk版本
在Sun / Oracle时代,通常是Sun / Oracle基于OpenJDK源产生专有的下游JDK发行版。最近,Oracle决定仅在附带商业支持的情况下进行自己的专有构建。他们还在其https://jdk.java.net/网站上慷慨地发布了OpenJDK构建。
JDK11之后
从JDK 11开始发生的事情是从单一供应商(Oracle)思维方式转变为您选择一种供应商的思维方式,该提供者可以在您喜欢的条件下为产品分配产品:它们构建的平台,发布的频率和及时性,支持的结构方式等。如果您不信任任何现有供应商,甚至可以自己构建OpenJDK。
OpenJDK的每个构建通常都由相同的原始上游源存储库(OpenJDK“项目”)制成。但是,每个构建都是非常独特的-免费的或商业的,有品牌的或无品牌的,纯净的或捆绑的(例如,BellSoft Liberica JDK提供捆绑的JavaFX,从JDK 11开始从Oracle组装中删除了JavaFX)。
如果没有环境(例如Linux)和/或许可证要求定义了特定的发行版,并且您想要最标准的 JDK构建,则最好的选择可能是使用Oracle的OpenJDK或AdoptOpenJDK。
JDK目前的提供商
-
AdoptOpenJDK - https: //adoptopenjdk.net -
亚马逊– Corretto - https ://aws.amazon.com/corretto -
Azul Zulu - https://www.azul.com/downloads/zulu/ -
BellSoft Liberica - https: //bell-sw.com/java.html -
IBM - https://www.ibm.com/developerworks/java/jdk -
jClarity - https: //www.jclarity.com/adoptopenjdk-support/ -
OpenJDK上游-https : //adoptopenjdk.net/upstream.html -
Oracle JDK - https://www.oracle.com/technetwork/java/javase/downloads -
Oracle OpenJDK - http://jdk.java.net -
ojdkbuild - https://github.com/ojdkbuild/ojdkbuild -
RedHat - https://developers.redhat.com/products/openjdk/overview -
SapMachine - https: //sap.github.io/SapMachine
最好的选择可能是使用Oracle的OpenJDK或AdoptOpenJDK。
jdk安装和ide配置jdk的关系
jdk安装过程中总是涉及到环境变量的配置,配置jdk环境变量的目的是可以全局引用jdk,特别是在命令行里运行jdk,但是问题就是一个环境里只能配置一次jdk,切换版本麻烦,推荐使用jenv来管理。 jenv的windows版本要用这个jenv的windows版本,其他系统官网下载即可,其他工具sdkman等windows配置比较麻烦,其他系统可以考虑使用
"jenv add <name> <javaPath to JAVA_HOME>" adds a new java version"
"jenv use <name>" changes the java_home and path for the current session
"jenv change <name>" changes the java_home and path permanently
"jenv list" lists all added JAVA Environments
"jenv remove <name>" removes an existing java version
例子
jenv add jdk17 D:\Java\jdk17
java -version
另外环境变量的jdk版本,不影响ide的jdk版本
,虽然ide会检测环境变量的jdk,但是如果不配置环境变量,在ide里单独设置jdk也是可以的。分别设置如下两个位置的jdk信息


公众号同步更新欢迎关注

作者介绍

宇宙区长
宇宙区长