Prefacio
Para crear un proyecto Maven en IDEA, la premisa es que se haya instalado y configurado el entorno Maven.
Si aún no ha configurado e instalado Maven, descárguelo e instálelo primero. Para saber cómo descargar e instalar, consulte mi otro artículo:
Tutorial de descarga e instalación de Maven
Este tutorial se basa en la creación de un proyecto JavaWeb basado en servlets como ejemplo. Para el marco de la serie Spring, las dependencias relevantes del pom. Es necesario ajustar el archivo xml.
1. Configurar Maven en IDEA
- Abra IDEA y cree un nuevo proyecto
- Web_work con nombre
- Primero abra IDEA y seleccione Archivo -> Configuración -> experto en búsqueda, verá la siguiente interfaz
- Modificar la configuración de configuración predeterminada
2. Crea un proyecto Maven
Después de configurar maven en IDEA, a continuación usamos maven para construir rápidamente un proyecto JavaWeb
-
Una vez creado el proyecto, elija crear un módulo
-
Seleccionar para crear un proyecto maven
-
Haga clic en Siguiente para completar la información del proyecto y
realizar una modificación -
El proyecto creado se parece a esta
descripción del directorio Maven:
src/main/java —— 存放项目的.java 文件
src/main/resources —— 存放项目资源文件,如数据库的配置文件
src/test/java —— 存放所有单元测试.java 文件,如 JUnit 测试类
target —— 项目输出位置,编译后的class 文件会输出到此目录
pom.xml ——maven 项目核心配置文件
3. Transformación de ingeniería de Maven
El proyecto maven creado actualmente es un proyecto Java ordinario, no un proyecto web, necesitamos hacer una transformación
-
Cree una carpeta de aplicaciones web en el directorio principal
-
Seleccione la estructura del proyecto -> facetas -> haga clic en el signo + para agregar web -> seleccione el proyecto actual hello_maven
-
Modificar la información de la ruta
-
Modificado a nuestro directorio de aplicaciones web
después de la modificación -
Después de hacer clic en Aceptar, el proyecto se convierte en un proyecto web, cree otro index.jsp en el directorio de la aplicación web y estará bien
4. Archivo de configuración de Pom core
Un proyecto de maven tiene un archivo pom.xml, a través del cual el archivo pom.xml define la información del proyecto, las dependencias del proyecto, los complementos de importación, etc.
- Cree un Servlet, falta un paquete jar e informe un error. Para resolver el problema, coloque el paquete servlet-api-xxx.jar en. Como proyecto maven, debe agregar las coordenadas del servlet para importar su jar.
- Introduzca las coordenadas de los paquetes dependientes en el archivo 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.lagou</groupId>
<artifactId>hello_maven</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
- Se realiza un proyecto Maven
groupId
,artifactId
yversion
, cuando nos referimos a otras bibliotecas de terceros, pero también como un identificador único determinado por estas tres variables.
-
El concepto de coordenadas
- Las coordenadas en maven son para ubicar un paquete jar único.
- El mundo de los maven tiene una gran cantidad de compilaciones. Necesitamos encontrar una especificación unificada que identifique de manera única una compilación. Con una especificación unificada, la búsqueda puede transferirse a la máquina.
-
Los componentes principales de las coordenadas de Maven (GAV): determinan la ubicación de un frasco en Internet
etiqueta | sentido |
---|---|
Identificación del grupo | Defina el nombre actual de la organización Maven, generalmente el nombre de la empresa |
artifactId | Definir el nombre real del proyecto |
versión | Definir la versión actual del proyecto actual |
embalaje | Tipo de paquete jar: ejecutar paquete y se marcará como paquete jar war: ejecutar paquete y se marcará como paquete war |
dependencia | Uso <dependency> Después de declarar una dependencia, Maven descargará automáticamente los paquetes dependientes |
- La gestión de dependencias de Maven es una gestión unificada de los paquetes jar de los que depende el proyecto.
etiqueta | sentido |
---|---|
dependencias | Expresar dependencias |
dependencia | Uso <dependency> Después de declarar una dependencia, Maven descargará automáticamente los paquetes dependientes |
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
</dependencies>
- La fuente de coordenadas.
Agregar dependencias requiere especificar las coordenadas del paquete jar dependiente, pero en muchos casos no conocemos las coordenadas del paquete jar. Puedes consultarlo de la siguiente manera:
buscar desde el sitio web.
5.1) Ingrese la URL, ingrese la URL y consulte
https://mvnrepository.com/
5.2) Luego de hacer clic para ingresar, puede ver la información de cada versión, seleccione 3.1.0
5. Agregar complemento
- Agregue el complemento de compilación, configure la versión de compilación de jdk
Este tutorial usa jdk11, y debes configurar la versión de compilación en 11. Aquí debes usar el complemento maven para configurarlo
. Agrega la siguiente configuración al pom:
<!-- properties 是全局设置,可以设置整个maven项目的编译器 JDK版本 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- 重点 -->
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<!-- 在build中 我们需要指定一下项目的JDK编译版本,maven默认使用1.5版本进行编译
注意 build 与 dependencies是平级关系,标签不要写错位置 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
</plugins>
</build>
6. Ejecute el proyecto Maven
- Mejorar el código del proyecto
ServletDemo01.java
@WebServlet("/demo01")
public class ServletDemo01 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("hello maven!!!!");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h1>这是我的第一个maven工程!</h1>
</body>
</html>
-
Configurar tomcat, implementar el proyecto
-
Ejecute el proyecto, acceda a index.jsp de forma predeterminada
-
Visitar Servlet
http://localhost:8080/hello_maven/demo01