0

0

在Java中Linux服务器如何安装JDK_JavaLinux环境部署步骤

P粉602998670

P粉602998670

发布时间:2026-01-25 12:04:03

|

658人浏览过

|

来源于php中文网

原创

需确认系统架构与jdk版本匹配,先用uname -m查x86_64或aarch64等,再下载对应eclipse temurin jdk包;手动解压至/opt,配置/etc/profile.d/java.sh并生效;systemd服务需显式声明java_home和path,cron或脚本开头需source该文件;清理旧jdk软链避免冲突。

在java中linux服务器如何安装jdk_javalinux环境部署步骤

确认系统架构和JDK版本是否匹配

Linux服务器上装错JDK最常见原因就是架构不匹配,比如在 aarch64(ARM)机器上下载了 x86_64 的 JDK 包,解压后执行 java -version 会直接报 cannot execute binary file: Exec format error

  • 先运行 uname -m 查架构:输出 x86_64aarch64 是主流;armv7l 则需找旧版 JDK 8 带 ARMv7 支持的包
  • Eclipse Temurinjdk.java.net 下载对应 tar.gz 包(推荐 Temurin,长期维护、无商业限制)
  • 避免用 .rpm.deb 包——除非你确定用 yum/apt 管理且不需要多版本共存

解压并配置 JAVA_HOME 和 PATH

手动解压是最可控的方式,尤其在生产环境。别依赖系统包管理器自动注册环境变量,容易和已有 JDK 冲突。

  • 解压到统一目录,例如:sudo tar -zxf OpenJDK17U-jdk_x64_linux_hotspot_17.0.2_8.tar.gz -C /opt/
  • 重命名便于识别:sudo mv /opt/jdk-17.0.2+8 /opt/java-17
  • 编辑 /etc/profile.d/java.sh(新建),写入:
export JAVA_HOME=/opt/java-17
export PATH=$JAVA_HOME/bin:$PATH
  • 生效:运行 source /etc/profile.d/java.sh,再验证 java -versionecho $JAVA_HOME
  • 注意:不要写进 /etc/profile 主文件——升级时易被覆盖;也不要只写进个人 ~/.bashrc——服务启动常以 root 或专用用户运行,读不到

验证 Java 可被 systemd 服务或脚本正确调用

很多 Java 应用(如 Spring Boot jar、Tomcat)由 systemd 托管,但默认环境下 systemd 不读取 /etc/profile/etc/profile.d/,导致 java: command not found

ColorMagic
ColorMagic

AI调色板生成工具

下载
  • 在 service 文件中显式指定 Environment=JAVA_HOME=/opt/java-17Environment=PATH=/opt/java-17/bin:/usr/local/bin:/usr/bin:/bin
  • 或者用 ExecStartPre=/bin/sh -c 'source /etc/profile.d/java.sh && java -version' 做前置校验(可选)
  • 重启服务后检查:运行 systemctl show --property=Environment myapp.service,确认变量已注入
  • 若用 nohup 或 cron 启动脚本,也需在脚本开头 source /etc/profile.d/java.sh,不能只靠交互式 shell

卸载旧 JDK 或清理冲突路径

有些服务器预装了 OpenJDK(如 CentOS 7 自带 java-1.8.0-openjdk),即使你设置了新 JAVA_HOMEwhich java 仍可能指向 /usr/bin/java ——这是 alternatives 或软链造成的假象。

立即学习Java免费学习笔记(深入)”;

  • 运行 which javareadlink -f $(which java),看真实路径是否指向旧 JDK
  • 若想彻底清除系统自带 JDK:sudo yum remove java-1.8.0-openjdk*(CentOS/RHEL)或 sudo apt purge openjdk-8-jre(Ubuntu/Debian)
  • 更稳妥的做法是保留旧包,但用 update-alternatives --install 注册新 JDK,并设为默认(适合需多版本切换的场景)
  • 检查 /usr/bin/java 是否是软链,误删可能导致 yum工具异常——它依赖 /usr/bin/python 类似的底层 Java 工具链
JDK 部署真正的难点不在下载和解压,而在于环境变量如何穿透到所有执行上下文:shell、cron、systemd、su 切换用户、甚至容器内。漏掉任意一层,都可能表现为“明明装好了却找不到 java”。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
如何配置Tomcat环境变量
如何配置Tomcat环境变量

配置Tomcat环境变量需要在系统中添加CATALINA_HOME变量,并将Tomcat的安装路径添加到PATH变量中。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

117

2023.10.26

idea如何集成Tomcat
idea如何集成Tomcat

idea集成Tomcat的步骤:1、添加Tomcat服务器配置;2、配置项目部署;3、运行Tomcat服务器;4、访问项目;5、注意事项;6、关闭Tomcat服务器。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

173

2024.02.23

怎么查看Tomcat源代码
怎么查看Tomcat源代码

查看Tomcat源代码的步骤:1、下载Tomcat源代码;2、在IDEA中导入Tomcat源代码;3、查看源代码;4、理解Tomcat的工作原理;5、参与社区和贡献;6、注意事项;7、持续学习和更新;8、使用工具和插件。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

98

2024.02.23

常见的tomcat漏洞有哪些
常见的tomcat漏洞有哪些

常见的tomcat漏洞有:1、跨站脚本攻击;2、跨站请求伪造;3、目录遍历漏洞;4、缓冲区溢出漏洞;5、配置漏洞;6、第三方组件漏洞。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

170

2024.02.23

tomcat日志乱码怎么解决
tomcat日志乱码怎么解决

tomcat日志乱码的解决办法:1、修改tomcat的日志编码设置;2、检查ide的编码设置;3、检查操作系统的编码设置;4、使用过滤器处理日志;5、检查外部系统的编码设置;6、检查文件编码方式等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

158

2024.02.23

weblogic和tomcat有哪些区别
weblogic和tomcat有哪些区别

weblogic和tomcat的区别:1、功能;2、性能;3、规模;4、价格;5、安全性;6、配置和管理;7、社区支持;8、集成能力;9、升级和更新;10、可靠性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

200

2024.02.23

tomcat和nginx有哪些区别
tomcat和nginx有哪些区别

tomcat和nginx的区别:1、应用领域;2、性能;3、功能;4、配置;5、安全性;6、扩展性;7、部署复杂性;8、社区支持;9、成本;10、日志管理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

244

2024.02.23

tomcat启动闪退怎么解决
tomcat启动闪退怎么解决

tomcat启动闪退的解决办法:1、检查java环境;2、检查环境变量配置;3、检查端口被占用;4、检查配置文件编码;5、检查启动时需要的配置文件;6、检查相关文件是否丢失;7、检查防火墙和杀毒软件设置。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

169

2024.02.23

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

3

2026.03.11

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.5万人学习

Git 教程
Git 教程

共21课时 | 4.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号