
在 Eclipse 中 File → New → Maven Project → maven-archetype-webapp 時,卡在「Resolving Archetype」或彈出「Could not resolve archetype」錯誤。
Eclipse m2e 插件在 ~/.m2/repository/archetype-catalog.xml 及對應 JAR 快取元資料。網路波動、中斷下載、版本衝突導致快取不一致,無法解析骨架模板。

~/.m2/repository/ 整個目錄 (或僅刪除 org/apache/maven/archetypes/)# 1. 刪除 archetype 目錄
rm -rf ~/.m2/repository/org/apache/maven/archetypes/
# 2. 刪除 catalog 快取
rm -f ~/.m2/repository/archetype-catalog.xml
# 3. Eclipse 中刷新
# Window → Preferences → Maven → User Settings → Update Settings → Reindex
若中央倉庫最新版有問題,可在創建向導中:
Group Id: org.apache.maven.archetypesArtifact Id: maven-archetype-webappVersion: 1.4 (或穩定版 1.3)# 1. 有網機器預先下載
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes \
-DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=1.4 \
-DgroupId=com.test -DartifactId=demo -DinteractiveMode=false
# 2. 複製 ~/.m2/repository/org/apache/maven/archetypes/ 至離線機器
# 3. Eclipse 離線模式創建
# Preferences → Maven → ☑ Offline → 新建專案選擇本地 archetype
| 現象 | 原因 | 解決 |
|---|---|---|
| 創建專案用嵌入 Maven 但命令列用外部 | 版本/配置不一致 | Preferences → Maven → Installations → Add 外部 Maven → 勾選使用 |
| settings.xml 不同步 | 嵌入版讀取預設位置 | Preferences → Maven → User Settings → 指向外部 settings.xml |
webapp-demo/
├── pom.xml
├── src/
│ ├── main/
│ │ ├── java/
│ │ ├── resources/
│ │ └── webapp/
│ │ ├── WEB-INF/
│ │ │ └── web.xml
│ │ └── index.jsp
│ └── test/
│ └── java/
└── target/ (構建後生成)
<web-app version="3.1">pom.xml 含 jsp-api (provided) 與 jstl 依賴Maven Dependencies → WEB-INF/lib