Maven(三)使用 IDEA 创建一个 Maven 项目

时间:2022-03-30 07:48:02

利用 IDEA 创建一个 Maven 项目

创建 Maven 项目

选择 File --> New --> Project

Maven(三)使用 IDEA 创建一个 Maven 项目

选中 Maven

Maven(三)使用 IDEA 创建一个 Maven 项目

填写项目信息

Maven(三)使用 IDEA 创建一个 Maven 项目

选择工作空间

Maven(三)使用 IDEA 创建一个 Maven 项目

目录结构

├─src
│  ├─main
│  │  ├─java
│  │  ├─resources
│  │  └─webapp
│  │      └─WEB-INF
│  └─test
│      └─java

结构说明:

  • src:源码目录
    • src/main/java:Java源码目录
    • src/main/resources:资源相关目录
    • src/main/webapp:Web相关目录
    • src/test:单元测试

IDEA Maven 项目管理

在 IDEA 界面的右侧 Maven 选项,可以管理 Maven 项目的整个生命周期、插件、依赖等

Maven(三)使用 IDEA 创建一个 Maven 项目

完善 Maven 程序

修改 pom.xml 配置,内容如下:

<?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.jojo</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>

配置说明:

  • packing:项目的打包方式,这里选用 war 包,表示java web 应用程序
  • dependencies:项目的依赖配置,整个生命周期中所需的依赖都在这里配置

创建测试用 Servler & JSP

创建一个 servlet 用于测试请求

package com.jojo.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);
    }
}

main 目录下新建一个 webapp 目录,再在 webapp 下创建 WEB-INF 目录,并在此目录下创建 web.xml 文件

<?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.jojo.hello.maven.servler.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>

</web-app>

创建一个 JSP页面,用于测试请求

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <h1>Hello Maven</h1>
</body>
</html>

运行测试

配置 Tomcat 后运行项目,打开浏览器直接访问 http://localhost:8080/显示以下内容

<h1>Hello World</h1>

附:IDEA 配置 Maven

打开 File --> Settings, 在收索框中输入 Maven,选中 Build Tools 下的 Maven

重新配置 Maven home directory, 下面的 Local repository 会自动根据配置修改,而 User setting file 默认为用户名目录下的 setting.xml 文件,要勾选Override后重新定位地址.

Maven(三)使用 IDEA 创建一个 Maven 项目

以上配置只保证在本项目中 Maven 的配置,如果要确保其他项目也为相同的配置,需要在 File --> Other Sessings 中按上面步骤再配置一遍。