本文記錄從零開始搭建 Eclipse for Java EE 開發環境的完整流程,涵蓋 JDK 安裝、環境變數配置、Eclipse 解壓啟動、Tomcat 整合、動態 Web 專案建立與 Servlet 測試,適合初學者快速落地,也可作為團隊環境標準化參考。
| 元件 | 建議版本 | 官方下載連結 | 備註 |
|---|---|---|---|
| JDK | JDK 1.8 (LTS) 或 JDK 11/17/21 (LTS) | Oracle JDK / Eclipse Temurin | 生產環境建議 LTS 版本;學習用 1.8 相容性最佳 |
| Eclipse IDE for Java EE Developers | 2023-09 (4.29) 或最新版 | Eclipse Packages | 選擇 "Eclipse IDE for Enterprise Java and Web Developers" 含 WTP 插件 |
| Apache Tomcat | 9.0.x / 10.1.x (Servlet 5.0/6.0) | Tomcat 9 / Tomcat 10 | Spring Boot 3+ 需 Tomcat 10+ (Servlet 6.0);傳統 Spring 用 Tomcat 9 |
jdk-8uXXX-windows-x64.exe(或對應版本)。C:\Java\jdk1.8.0_361。JAVA_HOMEC:\Java\jdk1.8.0_361(你的實際安裝路徑)Path 變數 → 「新增」兩條:
%JAVA_HOME%\bin%JAVA_HOME%\jre\bin(若安裝了 Public JRE)CLASSPATH(可選,現代專案多用 Maven/Gradle 管理依賴,不強制):
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jarC:\Users\Admin> java -version java version "1.8.0_361" Java(TM) SE Runtime Environment (build 1.8.0_361-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode) C:\Users\Admin> javac -version javac 1.8.0_361
eclipse-enterprise-2023-09-R-win32-x86_64.zip(免安裝綠色版)。D:\DevTools\eclipse-enterprise。eclipse.exe 會彈窗「A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available...」。D:\Workspace\jee,勾選「Use this as default...」避免每次詢問。編輯解壓目錄下 eclipse.ini,在 -vmargs 之前指定 JDK 路徑:
-vm C:/Java/jdk1.8.0_361/bin/javaw.exe -vmargs -Dosgi.requiredJavaVersion=1.8 -Xms256m -Xmx2048m --add-modules=ALL-SYSTEM
apache-tomcat-9.0.83-windows-x64.zip,解壓至 D:\DevTools\apache-tomcat-9.0.83。bin 目錄,雙擊 startup.bat,觀察控制台輸出 Server startup in [xxx] ms。https://localhost:8080,出現 Tomcat 貓首頁即成功。bin/shutdown.bat 或 Ctrl+C 控制台。Window → Preferences → Server → Runtime Environments。D:\DevTools\apache-tomcat-9.0.83。File → New → Dynamic Web Project。MyFirstWeb。Apache Tomcat v9.0。3.1 (Tomcat 9) 或 4.0 (Tomcat 10)。Default Configuration for Apache Tomcat v9.0。src、WebContent/WEB-INF/web.xml。package com.demo.web;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
resp.setContentType("text/html;charset=UTF-8");
resp.getWriter().write("Hello, Eclipse + Tomcat!
Current time: " + new java.util.Date() + "
");
}
}
注意:Tomcat 10 (Servlet 5.0+) 包名為 jakarta.servlet.*;Tomcat 9 (Servlet 4.0) 為 javax.servlet.*。請根據 Target Runtime 選擇正確包名。
Run As → Run on Server。Apache Tomcat v9.0 at localhost → Finish。https://localhost:8080/MyFirstWeb/hello。| 現象 | 原因與解決 |
|---|---|
| Eclipse 啟動找不到 JRE | 未配置 JAVA_HOME 或 eclipse.ini 未指定 -vm |
| 專案部署後 404 | 檢查 Server 視圖模組路徑、web.xml url-pattern、Servlet 註解路徑、Context Root 設定 |
| Tomcat 啟動端口衝突 | 修改 server.xml Connector port 或關閉佔用 8080 的程式 |
| 中文亂碼 | resp.setCharacterEncoding("UTF-8")、server.xml URIEncoding="UTF-8"、JSP pageEncoding="UTF-8" |
| ClassNotFound: javax.servlet.* | Tomcat 10+ 需用 jakarta.servlet.*,或降級 Tomcat 9 |
環境是開發的基石,花時間把 Eclipse + JDK + Tomcat 搭穩、搭透,後續業務開發才能事半功倍。建議將本文配置步驟整理為團隊《開發環境標準化文檔》,新成員入職即可按圖索驥,避免「在我機器上能跑」的低級糾纏。