一、Maven Web 项目结构详解
1. 开发环境结构(src 目录)
plaintext
hello (项目名)
├── src
│ ├── main
│ │ ├── java # 存放 Java 源代码
│ │ ├── resources # 存放配置等资源文件
│ │ └── webapp # Web 项目特有目录
│ │ ├── html # 自定义 HTML 等静态资源目录(可改名)
│ │ └── WEB-INF # 核心目录,名称必须为 WEB-INF
│ │ └── web.xml # Web 项目核心配置文件
│ └── test # 测试代码目录
└── pom.xml # Maven 核心配置文件
2. 部署环境结构(package 打包后)
plaintext
hello (项目访问虚拟目录)
├── html # 静态资源目录(与开发目录对应)
└── WEB-INF # 核心目录,名称必须为 WEB-INF
├── classes # 存放编译后的 Java 字节码 + resources 资源文件
├── lib # 存放 pom.xml 中依赖的所有 jar 包
└── web.xml # Web 项目配置文件
3. pom.xml 核心配置:打包方式
Web 项目必须在 pom.xml 中指定打包方式为 war,否则无法部署:
xml
<!-- 打包方式:jar 为普通 Java 项目(默认),war 为 Web 项目 -->
<packaging>war</packaging>
二、IDEA 创建 Maven Web 项目的两种方式
方式一:使用骨架(archetype)创建
适合快速生成标准结构,步骤如下:
- 新建项目 :选择
Maven,勾选Create from archetype,选择org.apache.maven.archetypes:maven-archetype-webapp骨架。 - 清理冗余配置 :删除
pom.xml中多余的坐标、插件配置。 - 补全目录结构 :手动在
src/main下创建java、resources目录,并标记为源码 / 资源根目录。 - 补全 web.xml :确保
WEB-INF下存在web.xml配置文件。
方式二:不使用骨架创建(推荐,更灵活)
适合自定义项目结构,步骤如下:
- 新建项目 :选择
Maven,取消勾选Create from archetype,直接创建空 Maven 项目。 - 配置打包方式 :在
pom.xml中添加<packaging>war</packaging>。 - 补全目录结构 :手动创建
src/main/java、src/main/resources、src/main/webapp/WEB-INF目录。 - 配置 Web Facets :
- 打开
File → Project Structure → Facets,添加Webfacet。 - 配置
Deployment Descriptors,指定web.xml的正确路径(src/main/webapp/WEB-INF/web.xml),选择 3.0+ 版本。 - 配置
Web Resource Directories,指定webapp为资源根目录。
- 打开
- 创建 web.xml :在
WEB-INF下生成标准的web.xml配置文件。
三、Tomcat 部署项目的两种方式
方式一:使用 Tomcat Maven 插件(推荐,开发调试用)
无需安装本地 Tomcat,直接通过 Maven 启动,步骤如下:
-
在 pom.xml 中添加插件
xml
<build> <plugins> <!-- Tomcat7 Maven 插件 --> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <!-- 可选:配置端口号、访问路径 --> <configuration> <port>8080</port> <!-- 访问端口,默认 8080 --> <path>/hello</path> <!-- 项目虚拟路径,默认 / 项目名 --> </configuration> </plugin> </plugins> </build> -
启动项目
- 选中项目,右键 →
Run Maven→tomcat7:run(正常启动) - 如需断点调试,选择
Debug Maven→tomcat7:run - 也可在 IDEA 底部 Maven 工具栏中,直接执行
tomcat7:run命令
- 选中项目,右键 →
方式二:集成本地 Tomcat(生产部署用)
适合部署到本地安装的 Tomcat 服务器,步骤如下:
- 打开配置 :点击 IDEA 右上角
Server→Edit Configurations... - 添加 Tomcat 配置 :点击
+→Tomcat Server→Local - 配置 Tomcat home :点击
Configure...,选择本地 Tomcat 的安装目录,IDEA 会自动识别版本 - 部署项目 :切换到
Deployment标签页,点击+→Artifact...,选择项目对应的war包 - 保存并启动 :点击
Apply→OK,点击右上角绿色启动按钮,即可启动 Tomcat 并部署项目
四、关键注意事项
- WEB-INF 目录 :名称必须严格为
WEB-INF,否则 Tomcat 无法识别项目 - 打包方式 :Web 项目必须配置
<packaging>war</packaging>,否则 Maven 不会打包成可部署的 war 包 - 目录标记 :
java目录需标记为Sources Root,resources标记为Resources Root,否则代码 / 资源无法编译 - Tomcat 插件版本 :
tomcat7-maven-plugin兼容 Tomcat 7/8/9,高版本 Tomcat 可使用tomcat8-maven-plugin - 虚拟路径 :
path配置项目访问前缀,如/hello对应访问地址http://localhost:8080/hello