JDK安装教程合集,全平台覆盖

轻枫小哥_4471

轻枫小哥_4471

2026-08-16

485人浏览

原创

windows装jdk需手动设无空格路径如d:\dev\jdk21,配java_home和path中%java_home%\bin;macos须按芯片选arm64/x64安装包并配置java_home;linux推荐sdkman或tar.gz安装,注意glibc版本与jdk兼容性。

jdk安装教程合集,全平台覆盖

Windows装JDK:别点“下一步”就完事,路径和环境变量才是关键

装完JDK却运行不了java -version?大概率是路径或环境变量错了。Windows安装器默认会往C:\Program Files\Java\jdk-21这类带空格的路径装,而%JAVA_HOME%里含空格会导致javac、Maven甚至IDEA识别失败。

实操建议:

  • 安装时手动改路径,用纯英文无空格格式,比如D:\Dev\jdk21,并记牢这个位置
  • 安装完必须配两个系统环境变量:JAVA_HOME(值为JDK根目录,不含\bin),以及Path里追加%JAVA_HOME%\bin
  • 别勾选“Public JRE”,避免和JDK自带JRE冲突;也别装多个JDK到同一级目录下,容易被Path误读
  • 验证命令不是只敲java -version,还得补一句javac -version——前者可能调到旧版JRE,后者才真正测编译器是否就位

macOS装JDK:Intel和M系列芯片不能混用安装包

在M1/M2/M3 Mac上装x64版JDK,java能跑但javac可能报Bad CPU type in executable,因为部分工具链不兼容Rosetta二进制翻译。

实操建议:

  • 查清芯片类型:苹果菜单 → “关于本机”,看“芯片”项是“Apple M1”还是“Intel Core iX”
  • Apple Silicon必须下arm64 Installer(文件名含aarch64或macos-aarch64);Intel芯片选x64 Installer(含macos-x64)
  • macOS不依赖JAVA_HOME也能运行java,但IntelliJ、Gradle等工具强依赖它,所以仍要手动配置,推荐写入~/.zshrc:
    export JAVA_HOME=$(/usr/libexec/java_home -v 21)
  • 别用Homebrew装Oracle JDK,它默认装OpenJDK;如果项目明确要求Oracle版,必须官网下载dmg手动装

Linux装JDK:包管理器快但版本滞后,压缩包灵活但得自己管更新

Ubuntu用apt install openjdk-21-jdk确实三秒搞定,但实际装的是21.0.3+7这种子版本,而Spring Boot 3.3.0要求21.0.4+,就会卡在编译阶段报Unsupported class file major version。

DreamStudio
DreamStudio

一款基于Stable Diffusion生态的在线AI图像生成工具,帮助用户通过文字描述创建艺术图像和视觉素材。

下载

实操建议:

  • 开发机优先用SDKMAN:sdk install java 21.0.4-tem,版本精确、切换自由、多版本共存不打架
  • 服务器部署选手动tar.gz:从Adoptium或Eclipse Temurin下载jdk-21.0.4_linux-x64_bin.tar.gz,解压到/opt/jdk21,再用update-alternatives注册,避免硬编码路径
  • 别把JAVA_HOME写死在/etc/environment里——不同用户可能需要不同JDK,应放在/etc/profile.d/java.sh中统一export
  • 检查glibc版本:ldd --version,低于2.28的CentOS 7系统无法运行JDK 21+,得降级用JDK 17

JDK版本选错的典型症状:不是报错,而是“看起来正常却编译失败”

选JDK 8跑Spring Boot 3.x,控制台没报错,但@RestController返回404;用JDK 21编译Java 8源码,mvn compile成功,但运行时报java.lang.NoSuchMethodError——这些都不是环境没配好,是版本语义不匹配。

判断依据:

  • javac -source 8 -target 8 HelloWorld.java:强制指定源码和字节码版本,可暴露JDK内部兼容性断层
  • Maven项目看pom.xml里的maven-compiler-plugin配置,<source></source>和<target></target>必须≤JDK主版本,且≥项目依赖框架最低要求
  • Spring Boot官方文档明确写清支持的JDK范围,比如3.3.x只支持JDK 17/21,JDK 22不在列表里就别试
  • 别信“高版本向下兼容”的直觉——JDK 21删了javax.xml.bind,JDK 22移除了SecurityManager,这些是静默破坏性变更

最常被忽略的一点:JDK安装后,IDE(如IntelliJ)不会自动感知新版本,必须手动在Project Structure → SDKs里重新添加,否则编辑器里语法提示、调试器断点全按旧JDK规则走,问题藏得深、难定位。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
java
java

Java是一个通用术语,用于表示Java软件及其组件,包括“Java运行时环境 (JRE)”、“Java虚拟机 (JVM)”以及“插件”。php中文网还为大家带了Java相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

2023.06.15

10657

6

java正则表达式语法
java正则表达式语法

java正则表达式语法是一种模式匹配工具,它非常有用,可以在处理文本和字符串时快速地查找、替换、验证和提取特定的模式和数据。本专题提供java正则表达式语法的相关文章、下载和专题,供大家免费下载体验。

2023.07.05

7782

9

java自学难吗
java自学难吗

Java自学并不难。Java语言相对于其他一些编程语言而言,有着较为简洁和易读的语法,本专题为大家提供java自学难吗相关的文章,大家可以免费体验。

2023.07.31

6772

8

java配置jdk环境变量
java配置jdk环境变量

Java是一种广泛使用的高级编程语言,用于开发各种类型的应用程序。为了能够在计算机上正确运行和编译Java代码,需要正确配置Java Development Kit(JDK)环境变量。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.08.01

1144

3

java保留两位小数
java保留两位小数

Java是一种广泛应用于编程领域的高级编程语言。在Java中,保留两位小数是指在进行数值计算或输出时,限制小数部分只有两位有效数字,并将多余的位数进行四舍五入或截取。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.08.02

948

3

java基本数据类型
java基本数据类型

java基本数据类型有:1、byte;2、short;3、int;4、long;5、float;6、double;7、char;8、boolean。本专题为大家提供java基本数据类型的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.02

1396

5

java有什么用
java有什么用

java可以开发应用程序、移动应用、Web应用、企业级应用、嵌入式系统等方面。本专题为大家提供java有什么用的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.02

2809

5

java在线网站
java在线网站

Java在线网站是指提供Java编程学习、实践和交流平台的网络服务。近年来,随着Java语言在软件开发领域的广泛应用,越来越多的人对Java编程感兴趣,并希望能够通过在线网站来学习和提高自己的Java编程技能。php中文网给大家带来了相关的视频、教程以及文章,欢迎大家前来学习阅读和下载。

2023.08.03

20111

3

配置java环境变量
配置java环境变量

配置Java环境变量是为了让操作系统能够识别和使用Java的相关命令和功能。本专题为大家提供配置java环境变量相关文章,帮助大家解决问题。

2023.08.03

1235

8

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.7万人学习