Maven Web 專案在 Eclipse 中常面臨「莫名錯誤標記、清理項目還要清 Tomcat、依賴解析失敗」等痛點。IntelliJ IDEA 憑藉智能索引、原生 Maven 整合、強大的項目結構識別,成為 Java 開發首選。本文手把手演示:創建專案、配置 Maven、標記源碼/測試/資源目錄、設置輸出路徑,奠定後續容器配置基礎。
JAVA_HOMEsettings.xml(鏡像倉庫、本地倉庫路徑)
GroupId、ArtifactId、Version
settings.xml
archetype 生成的結構可能缺失 src/main/java、src/test/java 等目錄,需手動補全:
project-root
├── src
│ ├── main
│ │ ├── java ← 標記為 Sources Root (藍色)
│ │ ├── resources ← 標記為 Resources Root
│ │ └── webapp ← Web 資源目錄 (WEB-INF/web.xml)
│ └── test
│ ├── java ← 標記為 Test Sources Root (綠色)
│ └── resources ← 標記為 Test Resources Root
├── target ← 編譯輸出(自動生成)
└── pom.xml
src/main/java → Sources (藍色)src/main/resources → Resourcessrc/test/java → Tests (綠色)src/test/resources → Test Resources
target/classes(Maven 標準)target/test-classes
驗證:運行一個簡單 Main 類,查看 target/classes 下生成 .class 文件。
src/main/webapp/WEB-INF/web.xml 存在(Servlet 3.0+ 可選)pom.xml 添加 Web 依賴:
<dependencies>
<!-- Servlet API (provided 由容器提供) -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<!-- JSP/JSTL (若使用 JSP) -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
| 現象 | 原因 | 解決 |
|---|---|---|
| 目錄圖標顏色錯誤(普通文件夾圖標) | 未標記為 Sources/Tests | Project Structure → Sources → Mark as |
| 無法解析依賴 | Maven 配置錯誤/鏡像不可用 | 檢查 settings.xml、Maven Home、Reimport |
| JSP 紅色報錯 | 缺少 JSP 依賴/編譯輸出路徑錯誤 | 添加 jsp-api、檢查 target/classes |
| 資源文件未拷貝到 target | resources 目錄未標記 | Mark as Resources Root |
「創建專案 → 配置 Maven → 標記目錄 → 設置輸出 → 導入依賴」五步走,建立標準化 Maven Web 專案骨架。目錄標記是 IDEA 識別代碼/資源/測試的關鍵,輸出路徑對齊 Maven 標準可避免部署找不到類。下一篇將接續配置 Tomcat/Jetty 實現熱部署調試。