1. Maven 常用命令
1.1 清除产生的项目
1.2 编译源代码
1.3 打包
1.4 只打包不测试(跳过测试)
1
| mvn -dmaven.test.skip=true
|
1.5 安装到本地仓库
1.6 源码打包
1 2 3 4
| #源码打包 mvn source:jar 或 mvn source:jar-no-fork
|
2. 第一个Maven程序
2.1 IDEA创建 Maven项目
选择 Create New Project
![](http://cdn.panyucable.cn/zysheep/maven1 (1).png)
选择 Maven 项目
![](http://cdn.panyucable.cn/zysheep/maven1 (2).png)
填写项目信息
![](http://cdn.panyucable.cn/zysheep/maven1 (3).png)
选择工作空间
![](http://cdn.panyucable.cn/zysheep/maven1 (4).png)
3. 目录结构
Java Web
的 Maven
基本结构如下:
1 2 3 4 5 6 7 8
| ├─src │ ├─main │ │ ├─java │ │ ├─resources │ │ └─webapp │ │ └─WEB-INF │ └─test │ └─java
|
结构说明:
- src:源码目录
- src/main/java:Java 源码目录
- src/main/resources:资源文件目录
- src/main/webapp:Web 相关目录
- src/test:单元测试
4. IDEA Maven 项目
在 IDEA 界面的右侧 Maven Projects 选项,可以管理 Maven 项目的整个生命周期、插件、依赖等
![](http://cdn.panyucable.cn/zysheep/maven1 (5).png)
5. 完善 Java Web 程序
5.1 POM
修改 pom.xml
配置,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.zysheep</groupId> <artifactId>hello-maven</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>war</packaging>
<dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency>
<dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>1.7.25</version> </dependency> </dependencies> </project>
|
配置说明:
packaging
:打包方式,这里是 war 包,表示为 Java Web 应用程序
dependencies
:项目依赖配置,整个项目生命周期中所需的依赖都在这里配置
5.2 创建测试用 Servlet
创建一个 Servlet
用于测试请求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| package com.zysheep.hello.maven.servlet;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;
public class HelloServlet extends HttpServlet {
@Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.getRequestDispatcher("/index.jsp").forward(req, resp); }
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doPost(req, resp); } }
|
5.3 创建测试用 JSP
创建一个JSP
页面,用于测试请求
1 2 3 4 5 6 7 8
| <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> Hello Maven </body>
|
5.4 创建 Log4J 的配置文件
在src/main/resources
目录下创建 log4j.properties
配置文件,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12
| log4j.rootLogger=INFO, console, file
log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.appender.file.File=logs/log.log log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.A3.MaxFileSize=1024KB log4j.appender.A3.MaxBackupIndex=10 log4j.appender.file.layout.ConversionPattern=%d %p [%c] - %m%n
|
5.5 配置 web.xml
web.xml
配置文件如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0">
<servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>com.funtl.hello.maven.servlet.HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/servlet/hello</url-pattern> </servlet-mapping> </web-app>
|
5.6 测试运行
按照之前章节 第一个 IDEA 应用程序 配置完 Tomcat 后直接运行,打开浏览器访问 http://localhost:8080 显示如下: