Java Linux环境如何搭建
Linux 上搭建 Ja va 环境的完整步骤

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
一 准备与版本选择
动手之前,先做好规划总是没错的。这一步的核心,是确保后续操作顺畅,避免走回头路。
- 选择 LTS 版本:目前,OpenJDK 的 8、11、17 版本是长期支持(LTS)的主流选择。它们兼顾了广泛的生态兼容性与出色的稳定性,是企业级应用和一般开发的稳妥之选。
- 选择安装方式:这里有个小技巧——优先使用发行版自带的包管理器(比如 apt、yum、dnf)。这么做的好处是,系统会自动处理依赖关系,后续升级也方便。当然,如果你需要特定的小版本或者 Oracle JDK,手动解压安装或者使用版本管理工具会更灵活。
- 确认系统架构:现在绝大多数服务器都是 x64(64位)架构。安装时,务必确认下载的是 64 位的 JDK,这点在服务器场景下尤为重要。
二 安装 JDK
选好了版本和方式,接下来就是执行安装。不同的 Linux 发行版,命令略有不同,但逻辑相通。
- 基于 Debian/Ubuntu(以 OpenJDK 11 为例)
- 首先更新软件包索引,然后安装:
sudo apt update
sudo apt install openjdk-11-jdk
- 首先更新软件包索引,然后安装:
- 基于 RHEL/CentOS(以 OpenJDK 11 为例)
- 安装对应的开发包:
sudo yum install ja va-11-openjdk-devel
- 安装对应的开发包:
- 基于 Fedora(以 OpenJDK 11 为例)
- 安装命令如下:
sudo dnf install ja va-11-openjdk
- 安装命令如下:
- 验证安装:安装完成后,别忘了验证一下。在终端输入:
ja va -version
ja vac -version
如果能看到对应的版本信息,恭喜你,一个可用的 JRE/JDK 环境已经就位了。以上命令覆盖了主流发行版的安装路径,照着做基本没问题。
三 配置环境变量
安装成功只是第一步,要让系统在任何地方都能识别 Ja va 命令,还需要配置环境变量。这是让 Ja va 真正“融入”系统的关键。
- 查找实际安装路径(以 Debian 系为例):
ls /usr/lib/jvm
你会看到一个类似/usr/lib/jvm/ja va-11-openjdk-amd64的路径,这就是你的 JDK 根目录。 - 设置环境变量(写入当前用户或全局生效)
- 当前用户(推荐):编辑用户家目录下的
~/.bashrc或~/.zshrc文件:
echo ‘export JA VA_HOME=/usr/lib/jvm/ja va-11-openjdk-amd64’ >> ~/.bashrc
echo ‘export PATH=$JA VA_HOME/bin:$PATH’ >> ~/.bashrc
然后执行source ~/.bashrc让配置立即生效。 - 全局生效:如果需要所有用户都能使用,可以编辑系统级配置文件:
echo ‘JA VA_HOME=/usr/lib/jvm/ja va-11-openjdk-amd64’ | sudo tee -a /etc/environment
echo ‘PATH=$PATH:/usr/lib/jvm/ja va-11-openjdk-amd64/bin’ | sudo tee -a /etc/profile
同样,执行source /etc/profile来生效。
- 当前用户(推荐):编辑用户家目录下的
- 验证:配置完成后,用以下命令检查:
echo $JA VA_HOME
which ja va
ja va -version
简单来说,JA VA_HOME变量告诉系统 JDK 的“家”在哪里;而把$JA VA_HOME/bin加入PATH后,你就可以在任意目录下直接使用ja va、ja vac这些命令了。
四 多版本共存与切换
开发中经常需要切换不同的 Ja va 版本,如何优雅地管理它们?这里有两个主流方案。
- 使用系统工具 update-alternatives
- 注册候选版本(路径请根据实际情况调整):
sudo update-alternatives --install /usr/bin/ja va ja va /usr/lib/jvm/ja va-11-openjdk-amd64/bin/ja va 110
sudo update-alternatives --install /usr/bin/ja vac ja vac /usr/lib/jvm/ja va-11-openjdk-amd64/bin/ja vac 110 - 交互选择默认版本:
sudo update-alternatives --config ja va
sudo update-alternatives --config ja vac
执行后会列出所有已注册版本,输入序号即可切换。
- 注册候选版本(路径请根据实际情况调整):
- 使用版本管理工具(可选)
- SDKMAN!:这是一款非常流行的工具,一条命令就能安装和管理多个版本。
curl -s “https://get.sdkman.io” | bash
source “$HOME/.sdkman/bin/sdkman-init.sh”
sdk install ja va 11.0.11-open - jEnv:这款工具的优势在于可以方便地设置项目级(局部)的 Ja va 版本,同时也能管理全局默认版本。
- SDKMAN!:这是一款非常流行的工具,一条命令就能安装和管理多个版本。
五 快速验证与常见问题
环境搭好了,最后一步是验收和排雷。跑通一个“Hello World”,心里才踏实。
- 快速验证
- 编译运行测试:在终端里依次执行以下命令:
echo ‘public class HelloWorld{public static void main(String[]a){System.out.println(“Hello, Ja va on Linux”);}}’ > HelloWorld.ja va
ja vac HelloWorld.ja va
ja va HelloWorld
如果屏幕上成功打印出 “Hello, Ja va on Linux”,那么整个 Ja va 开发环境就完全准备就绪了。
- 编译运行测试:在终端里依次执行以下命令:
- 常见问题排查
- “ja va: command not found”:这通常是
PATH环境变量没配置对。检查PATH是否包含了$JA VA_HOME/bin,并确认执行了source命令使配置文件生效。 - “JA VA_HOME 未设置或路径错误”:用
echo $JA VA_HOME检查变量值,确保它指向的是 JDK 的根目录(包含 bin、lib 等文件夹的目录),而不是里面的bin子目录。 - 多版本冲突:如果构建工具和运行时使用的版本不一致,容易出问题。使用
update-alternatives --config ja va统一设置默认版本是个好习惯。 - 卸载旧版本(按需):
- Debian/Ubuntu:
sudo apt remove openjdk-11-jdk - RHEL/CentOS:
sudo yum remove ja va-11-openjdk-devel
- Debian/Ubuntu:
- “ja va: command not found”:这通常是
以上步骤,从安装、配置、验证到排错,覆盖了在 Linux 上搭建 Ja va 环境的关键环节。无论是用于开发、测试还是生产部署,这套流程都能提供一个坚实可靠的基础。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
如何在Debian中集成Golang日志
在Debian系统中集成Golang日志的完整指南 在Debian Linux系统上为Golang应用程序配置日志功能,是开发过程中确保应用可观测性和故障排查能力的关键步骤。本指南将详细讲解从环境准备到高级集成的完整流程,帮助您快速构建可靠的日志系统。 1 安装Golang开发环境 首先确保您的D
Debian系统中Golang日志管理工具
Debian系统Golang日志管理:工具选型与实战部署指南 一 核心工具与适用场景 在Debian系统上构建高效的Golang日志管理体系,工具选型是首要环节。不同业务场景对日志的采集、处理与分析需求各异。以下工具链覆盖了从日志生成、传输、存储到可视化的全流程解决方案。 日志库 标准库 log:G
Debian Golang日志错误排查技巧
Debian 系统下 Golang 日志错误排查与定位全攻略 在 Debian 服务器上进行线上问题诊断时,日志是首要的线索来源。掌握一套高效的 Golang 日志定位与排查流程,能帮助开发者从繁杂的系统信息中迅速锁定问题根源。本文为您系统梳理从系统日志关联到应用层最佳实践的完整解决方案,提升故障排
如何在VSCode中把选中的单行长代码一键格式化成多行
如何在VSCode中把选中的单行长代码一键格式化成多行 为什么 Shift+Alt+F 对单行代码没反应? 这事儿挺常见的:你选中一段长长的代码,满怀期待地按下 Shift+Alt+F,结果……什么都没发生。代码还是挤在一行,纹丝不动。 问题出在哪?其实,这通常不是VSCode的“Bug”,而是格式
Golang日志切割在Debian的实现
在Debian系统中实现Golang日志切割的三种高效方案 随着Golang应用程序持续运行,日志文件会不断增长,不仅大量占用服务器磁盘空间,还会导致日志查询效率低下,给故障排查和性能分析带来诸多不便。在Debian Linux生产环境中,为Go应用实施有效的日志切割与轮转策略,是保障系统可维护性的
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

