【工具】Maven

文章目录

  • 0.Maven安装(不使用IDEA内置)
  • 1.Maven的作用
  • 2.Maven核心概念
  • 3.maven目录结构
  • 4.仓库
  • 5.pom文件
    • 5.1 坐标 gav
    • 5.2.packaging
    • 5.3.依赖
    • 5.4.配置属性
    • 5.5.build
  • 6.Maven生命周期
  • 7.junit 单元测试
  • 8.插件
  • 9.IDEA构建Maven
  • 10.创建javase项目
  • 11.web工程
  • 12.依赖的范围
  • 13 Maven常用属性

0.Maven安装(不使用IDEA内置)

(1)3.3.9 适合 jdk1.8
在这里插入图片描述
(2)解压到一个文件夹,路径不含有中文
【工具】Maven_第1张图片
(3)配置环境变量

name M2_HOME
value D:\dev\maven\maven3.3.9\apache-maven-3.3.9-bin\apache-maven-3.3.9

【工具】Maven_第2张图片

【工具】Maven_第3张图片
注意之前要配置JAVA_HOME

(4)安装正确
【工具】Maven_第4张图片

(5)默认仓库(本地仓库地址)
【工具】Maven_第5张图片

备份settings.xml
【工具】Maven_第6张图片

【工具】Maven_第7张图片

1.Maven的作用

  • 管理依赖
    jar包的管理,应用,版本
  • 构建项目
    完成项目的编译,测试,打包,部署

2.Maven核心概念

  • POM
    项目对象模式,Maven把一个项目当做一个模型,控制Maven项目构建的过程,管理Jar包。
  • 约定的目录结构
    每一个Maven项目的目录和文件都是有特定位置的。
  • 坐标
    唯一标识符,标识资源。
  • 依赖管理
    管理jar包。
  • 仓库管理
    资源存储的位置。
  • 生命周期
    maven项目构建过程
  • 插件和目标
    执行maven构建时使用的工具是插件
  • 继承
  • 聚合

3.maven目录结构

【工具】Maven_第8张图片

4.仓库

本地仓库, 就是你的个人计算机上的文件夹,存放各种jar

远程仓库, 在互联网上的,使用网络才能使用的仓库
①:中央仓库,最权威的, 所有的开发人员都共享使用的一个集中的仓库,
https://repo.maven.apache.org :中央仓库的地址
②:中央仓库的镜像:就是中央仓库的备份, 在各大洲,重要的城市都是镜像。
③:私服,在公司内部,在局域网中使用的, 不是对外使用的。

5.pom文件

5.1 坐标 gav

 <groupId>公司域名的倒写groupId>
 <artifactId>自定义项目名称artifactId>
 <version>自定版本号version>

https://mvnrepository.com/ 搜索使用的中央仓库, 使用groupId 或者 artifactId作为搜索条件

【工具】Maven_第9张图片

开发人员需要使用mysql驱动—>maven首先查本地仓库—>私服—>镜像—>中央仓库

5.2.packaging

打包后压缩文件的扩展名,默认jar,web应用默认war

5.3.依赖


<dependencies>
  <dependency>
    <groupId>com.mysqlgroupId>
    <artifactId>mysql-connector-jartifactId>
    <version>8.0.32version>
  dependency>
dependencies>

5.4.配置属性

properties 设置属性

5.5.build

项目进行构建时,使用的配置信息

6.Maven生命周期

maven构建项目的过程,清理,编译,测试,报告,打包,安装,部署

maven的命令:maven独立使用,通过命令,完成maven的生命周期的执行。maven可以使用命令,完成项目的清理,编译,测试等等

maven的插件: maven命令执行时,真正完成功能的是插件,插件就是一些jar文件, 一些类。

7.junit 单元测试

专门测试程序方法

testAdd叫做测试方法,它的定义规则
1.方法是public的,必须的
2.方法没有返回值, 必须的
3.方法名称是自定义的,推荐是Test + 方法名称
4.在方法的上面加入 @Test

8.插件

【工具】Maven_第10张图片

9.IDEA构建Maven

不使用内置的Maven

(1)设置之后新建项目使用配置
【工具】Maven_第11张图片
【工具】Maven_第12张图片
【工具】Maven_第13张图片
【工具】Maven_第14张图片

10.创建javase项目

(1)新建空工程

【工具】Maven_第15张图片
(2)使用骨架创建模块

【工具】Maven_第16张图片
【工具】Maven_第17张图片

修改配置

【工具】Maven_第18张图片

【工具】Maven_第19张图片

生命周期 插件 依赖
【工具】Maven_第20张图片

11.web工程

(1)maven构建项目
【工具】Maven_第21张图片
【工具】Maven_第22张图片
手动添加,补充完整
【工具】Maven_第23张图片
(2)创建servlet
在com.sdnu.controller下快捷键alt + insert ,搜索servlet
【工具】Maven_第24张图片
HelloServlet

package com.sdnu.controller;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.IOException;
import java.io.PrintWriter;

public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();
        out.print("Hello Maven Web");
        out.flush();
        out.close();
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();
        out.print("Hello Maven Web");
        out.flush();
        out.close();
    }
}

web.xml

<servlet>
    <servlet-name>HelloServletservlet-name>
    <servlet-class>com.sdnu.controller.HelloServletservlet-class>
  servlet>
  <servlet-mapping>
    <servlet-name>HelloServletservlet-name>
    <url-pattern>/hellourl-pattern>
  servlet-mapping>

(3)添加依赖

    
    <dependency>
      <groupId>javax.servletgroupId>
      <artifactId>javax.servlet-apiartifactId>
      <version>3.1.0version>
      <scope>providedscope>
    dependency>
    
    <dependency>
      <groupId>javax.servlet.jspgroupId>
      <artifactId>jsp-apiartifactId>
      <version>2.1version>
      <scope>providedscope>
    dependency>

index.jsp

<html>
	<body>
		<h2>Hello World!h2>
		<a href="hello">访问servleta>
	body>
html>

(4)部署项目

【工具】Maven_第25张图片
【工具】Maven_第26张图片

在这里插入图片描述
(5)打包

【工具】Maven_第27张图片
最终得出一个war包
【工具】Maven_第28张图片

12.依赖的范围

【工具】Maven_第29张图片

13 Maven常用属性

Maven属性设置

 设置maven的常用属性

Maven全局变量

自定义的属性,1.在 通过自定义标签声明变量(标签名就是变量名)
	         2.在pom.xml文件中的其它位置,使用 ${标签名} 使用变量的值

	自定义全局变量一般是定义 依赖的版本号, 当你的项目中要使用多个相同的版本号,
	先使用全局变量定义, 在使用${变量名}

你可能感兴趣的:(工具,maven,intellij-idea,java)