Java 學習第一步:從零搭建可運行、可開發、可部署的完整環境。本文圖文並茂講解 JDK 下載安裝、三大環境變量 (JAVA_HOME/CLASSPATH/PATH) 配置原理、Tomcat 安裝部署與項目發布三種方式、常見驗證命令與排錯,適合絕對新手跟著做即可成功。
.msi 安裝包,雙擊按提示安裝,默認路徑 C:\Program Files\Java\jdk-17。.tar.gz 到 /opt/java 或 /usr/lib/jvm。右鍵「此電腦」→ 屬性 → 高級系統設置 → 環境變量 → 系統變量 新建/編輯
| 變量名 | 變量值 | 作用 |
|---|---|---|
| JAVA_HOME | C:\Program Files\Java\jdk-17 | JDK 安裝根目錄,其他工具 (Maven/Gradle/Tomcat/IDEA) 依賴此變量定位 JDK |
| CLASSPATH | .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar | 類加載路徑:. 代表當前目錄;dt.jar 運行環境類庫,tools.jar 編譯工具類庫 (JDK 9+ 已模塊化,可省略) |
| PATH | %JAVA_HOME%\bin | 將 JDK 可執行程序目錄加入系統路徑,使 javac/java/javadoc 任意目錄可用 |
⚠️ 注意:多值之間用分號 ; 分隔,無空格。編輯 PATH 時建議將 %JAVA_HOME%\bin 置於最前,優先使用當前 JDK 版本。
C:\> java -version
java version "17.0.10" 2024-01-16 LTS
Java(TM) SE Runtime Environment (build 17.0.10+7-LTS-237)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.10+7-LTS-237, mixed mode, sharing)
C:\> javac -version
javac 17.0.10
C:\> echo %JAVA_HOME%
C:\Program Files\Java\jdk-17
輸出版本信息無誤即安裝成功。
apache-tomcat-9.0.x.zip (或 10.1.x for Servlet 6.0/JDK 11+)。D:\apache-tomcat-9.0.85。CATALINA_HOME = D:\apache-tomcat-9.0.85
CATALINA_BASE = D:\apache-tomcat-9.0.85 (多實例時不同)
PATH += ;%CATALINA_HOME%\bin
# Windows
startup.bat # 彈出控制台窗口運行
shutdown.bat # 正常關閉
# Linux/Mac
./startup.sh
./shutdown.sh
瀏覽器訪問 https://localhost:8080 出現 Tomcat 貓首頁即成功。
編輯 conf/server.xml:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
將 port 改為 8081 等,重啟生效。
myapp.war 放入 webapps/,Tomcat 自動熱部署解壓為 myapp/。https://localhost:8080/myapp/。編輯 conf/server.xml <Host> 內:
<Context docBase="D:\projects\myapp" path="/myapp" reloadable="true" />
docBase:項目絕對路徑 (含 WEB-INF/web.xml)。path:訪問路徑前綴。reloadable:開發階段設 true 熱加載類文件變更。conf/Catalina/localhost/ 下新建 myapp.xml。<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="D:\projects\myapp" path="/myapp" reloadable="true" />
| 現象 | 原因/解決 |
|---|---|
| java -version 报 "不是內部命令" | PATH 未生效:重開 CMD、檢查分號、確認 %JAVA_HOME%\bin 存在 |
| Tomcat 閃退 | JAVA_HOME 未配置或指向 JRE 而非 JDK;端口被佔用 (netstat -ano | findstr 8080) |
| 訪問 404 | 項目未部署、Context path 錯誤、web.xml 缺失 (Servlet 3.0+ 可無) |
| 中文亂碼 | server.xml Connector 加 URIEncoding="UTF-8";請求/響應過濾器設編碼 |
| Eclipse 發布項目 JAR 缺失 | Deployment Assembly 缺少 Maven Dependencies;或未勾選 "Publish module contexts" |
javac 編譯 → java 運行 → 理解字節碼。環境搭建是寫代碼的「地基」,JAVA_HOME 指向 JDK、PATH 含 bin、Tomcat 解壓即用、部署用 Context 隔離配置。按本文步驟操作,10 分鐘內即可擁有專業級 Java 開發環境。遇到問題優先看「常見問題速查」,多數為路徑、端口、編碼三大類。祝編碼愉快!