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

JDK 安裝與環境配置全攻略:Windows/Linux 跨平台實戰指南

     編輯:Java 程式設計入門

前言:開發環境的基石

正確安裝配置 JDK 是 Java 開發的第一步。本文涵蓋 Windows (98/ME/2000/XP) 與 Linux (RPM/解壓版) 多平台安裝、環境變數配置、類路徑管理、擴展機制、常見坑點與驗證步驟。

Windows 環境配置

Windows 98/ME:msconfig 法

  1. 執行 `msconfig` →「環境」頁籤
  2. 新增/修改:
    JAVA_HOME=L:\Java\J2SE          # 安裝目錄
    CLASSPATH=.;%JAVA_HOME%\lib\tools.jar
    PATH=...;%JAVA_HOME%\bin
  3. 重啟生效

Windows 2000/XP/現代版本:系統屬性法

  1. `Win+Break` 或 右鍵「此電腦」→「屬性」→「高級系統設置」→「環境變數」
  2. 系統變數 新增/編輯:
    JAVA_HOME=L:\Java\J2SE
    CLASSPATH=.;%JAVA_HOME%\lib\tools.jar
    PATH=%PATH%;%JAVA_HOME%\bin
  3. 無需重啟,新開命令列即時生效

驗證安裝

C:\> java -version
java version "1.8.0_291"  (或更高版本)

C:\> javac -version
javac 1.8.0_291

C:\> echo %JAVA_HOME%
L:\Java\J2SE

Linux 環境配置 (RPM 安裝)

預設安裝路徑

`/usr/java/jdk` (如 `/usr/java/jdk1.8.0_291`)

自定義安裝路徑 (RPM 重定向)

# 安裝到 /usr/local/home
rpm -i --badreloc --relocate /usr/java=/usr/local/home jdk-8u291-linux-x64.rpm

# 預設路徑安裝
rpm -ivh jdk-8u291-linux-x64.rpm

環境變數配置 (~/.bashrc / /etc/profile)

export JAVA_HOME=/usr/java/jdk1.8.0_291
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

執行 `source ~/.bashrc` 生效。

解壓版安裝 通用做法

tar -xzf jdk-8u291-linux-x64.tar.gz -C /opt/
ln -s /opt/jdk1.8.0_291 /opt/jdk  # 符號鏈接便於版本切換
# 同步配置 JAVA_HOME=/opt/jdk

第三方 JAR 包納入類路徑的三種方式

方式範圍優先級適用場景
1. 系統環境變數 CLASSPATH全域低極少數真正全域共享庫
2. 啟動參數 `-cp` / `-classpath`單次 JVM高開發測試、腳本、生產啟動腳本
3. 放入 `$JAVA_HOME/jre/lib/ext/`全域 (擴展類加載器)中JCE 擴展、JDBC 驅動等基礎設施庫

最佳實踐:避免依賴 CLASSPATH 環境變數。Maven/Gradle 專案由建構工具管理依賴;生產部署用啟動腳本顯式 `-cp` 或打包 Fat JAR (`java -jar app.jar`)。

常見坑點與排查

現象原因解決
`java: command not found`PATH 未含 `$JAVA_HOME/bin`檢查環境變數大小寫、source 生效、路徑正確
`javac: command not found`安裝 JRE 而非 JDK安裝完整 JDK (含 javac、tools.jar)
版本不符 (`java -version` vs `javac -version`)多 JDK 共存,PATH 順序錯誤調整 PATH 順序、用 `update-alternatives` (Linux) 管理
類找不到 `NoClassDefFoundError`CLASSPATH 缺失/錯誤檢查 `-cp` 包含所有依賴 JAR 目錄
Windows 路徑含空格失效路徑 `Program Files` 空格用短路徑 `Progra~1` 或避免安裝到含空格路徑

多版本共存管理

  • Windows:多目錄安裝 + 批次檔切換 `SET JAVA_HOME=...` + `PATH` 調整
  • Linux/macOS:`/usr/libexec/java_home -V` (mac) / `update-alternatives --config java` (Debian/Ubuntu) / SDKMAN! (`sdk install java 17.0.5-tem` `sdk use java 17.0.5-tem`)
  • 專案級:Maven `maven-compiler-plugin` 設定 `source`/`target` / `.java-version` 檔案 (IDE 識別)

現代化部署建議

  1. 採用 **JLink 定製運行時鏡像** (`jlink --add-modules java.base,java.logging --output jre-custom`),體積縮減 60%+
  2. 容器化:`FROM eclipse-temurin:17-jre-alpine` 多階段建構,最終鏡像 < 100MB
  3. GraalVM Native Image:AOT 編譯生成原生可執行檔,啟動毫秒級、無 JIT 預熱

總結

JDK 安裝核心在於:JAVA_HOME 指向安裝根目錄、PATH 含 bin 目錄、CLASSPATH 不濫用。Windows 用圖形界面配置系統變數,Linux 用 Shell 配置檔 + 符號鏈接管理版本。驗證 `java -version`/`javac -version` 雙命令輸出一致。現代專案以建構工具管理類路徑,容器化部署隔離環境,告別「在我機器上能跑」的配置地獄。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved