首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Ubuntu 下 JDK 安裝與環境變量配置完整指南

     編輯:Java 程式設計入門

在 Ubuntu 系統上安裝配置 JDK 是 Java 開發的第一步。本文提供 Oracle JDK 與 OpenJDK 兩種安裝路徑,並詳解環境變量持久化配置、多版本切換與驗證方法。

方案一:OpenJDK(推薦,開源、apt 管理、自動更新)

# 1. 更新包索引
sudo apt update

# 2. 搜索可用版本
apt search openjdk | grep -E '^openjdk-[0-9]+-jdk/'

# 3. 安裝 LTS 版本(如 17、21)
sudo apt install openjdk-17-jdk  # 或 openjdk-21-jdk

# 4. 驗證
java -version
javac -version

優點

  • 系統包管理器維護,安全更新自動推送
  • 無授權擔憂(GPL v2 with Classpath Exception)
  • 路徑標準化:/usr/lib/jvm/java-17-openjdk-amd64

方案二:Oracle JDK(商業特性、需授權)

手動安裝步驟

# 1. 下載 .tar.gz(從 Oracle 官網或第三方鏡像)
# 假設文件:jdk-17_linux-x64_bin.tar.gz

# 2. 解壓至 /opt 或 /usr/lib/jvm
sudo mkdir -p /usr/lib/jvm
sudo tar -xzf jdk-17_linux-x64_bin.tar.gz -C /usr/lib/jvm

# 3. 設置環境變量(見下文通用配置)

⚠️ 授權提醒

Oracle JDK 17+ 採用 NFTC(Oracle No-Fee Terms and Conditions):開發/測試免費,生產商業用途需購買訂閱。生產環境建議使用 OpenJDK 或 Eclipse Temurin、Azul Zulu 等免費構建版。

通用環境變量配置(持久化,對所有用戶生效)

# 編輯 /etc/profile.d/jdk.sh(推薦:模塊化,不污染 /etc/profile)
sudo vim /etc/profile.d/jdk.sh

# 寫入以下內容(根據實際安裝路徑調整)
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export JRE_HOME=$JAVA_HOME
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib

# 保存並生效
source /etc/profile.d/jdk.sh

單用戶配置(~/.bashrc 或 ~/.profile)

vim ~/.bashrc
# 追加相同 export 行
source ~/.bashrc

多版本共存與切換

# 查看已安裝版本
ls /usr/lib/jvm/

# 使用 update-alternatives 管理(OpenJDK 自動註冊)
sudo update-alternatives --config java
sudo update-alternatives --config javac

# 手動註冊 Oracle JDK
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-17/bin/java 100
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-17/bin/javac 100

驗證安裝

java -version
# 輸出示例:
# openjdk version "17.0.8" 2023-07-18
# OpenJDK Runtime Environment (build 17.0.8+7-Ubuntu-1ubuntu122.04)
# OpenJDK 64-Bit Server VM (build 17.0.8+7-Ubuntu-1ubuntu122.04, mixed mode, sharing)

javac -version
# javac 17.0.8

echo $JAVA_HOME
# /usr/lib/jvm/java-17-openjdk-amd64

常見問題排查

問題原因與解決
command not foundPATH 未生效 → source /etc/profile.d/jdk.sh 或重新登錄
版本不符多版本衝突 → update-alternatives --config java 選擇正確版本
權限不足目錄權限 → sudo chmod -R 755 /usr/lib/jvm/
CLASSPATH 找不到類建議不設置 CLASSPATH,現代構建工具自動管理依賴

Docker 環境快速安裝

# Dockerfile 片段
FROM ubuntu:22.04
RUN apt update && apt install -y openjdk-17-jdk
ENV JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
ENV PATH=$JAVA_HOME/bin:$PATH

總結建議

  • ✅ 生產/開發統一用 OpenJDK LTS(17/21),apt 安裝最省心
  • ✅ 環境變量寫入 /etc/profile.d/jdk.sh,模塊化管理
  • ✅ 使用 update-alternatives 切換版本,避免手動改 PATH
  • ❌ 不要盲目複製舊教程的 CLASSPATH 設置,現代項目用 Maven/Gradle
  • ❌ 避免在 /etc/profile 直接追加,難以維護與協同
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved