Maven 项目管理工具

Maven概述

Maven的作用

  • maven对项目的第三方构件 ( jar包)进行统一管理。向工程中加入jar包不要手工从其它地方拷贝,通过maven定义jar包的坐标,自动从maven仓库中去下载到工程中。
  • maven提供一套对项目生命周期管理的标准,开发人员、和测试人员统一使用maven进行项目构建。项目生命周期管理:编译、测试、打包、部署、运行。
  • maven对工程分模块构建,提高开发效率。

Maven的概念模型

  • 项目对象模型(Project object Model)。POM对象模型,每个maven工程中都有一个pom.xml文件,定义工程所依赖的jar包、本工程的坐标、打包运行方式。
  • 依赖管理系统(基础核心)。maven通过坐标对项目工程所依赖的jar包统一规范管理。
  • maven定义一套项目生命周期。清理、初始化、编译、测试、报告、打包、部署、站点生成。
  • 一组标准集合。maven工程有自己标准的工程目录结构、定义坐标有标准。
  • maven管理项目生命周期过程都是基于插件完成的,例如∶开发中使用的tomcat插件。

Maven的仓库介绍

仓库名称作用
本地仓库相当于缓存,工程第一次会从远程仓库(互联网)去下载jar包,将jar包存在本地仓库(在程序员的电脑上)。第二次不需要从远程仓库去下载。先从本地仓库找,如果找不到才会去远程仓库找。
中央仓库就是远程仓库,仓库中jar由专业团队(maven团队)统一维护。中央仓库的地 址:http://repo1.maven.org/maven2/
远程仓库在公司内部架设一台私服,其它公司架设一台仓库,对外公开。

Maven下载与安装

官网下载地址:https://maven.apache.org/download.cgi#
下载:apache-maven-3.8.2-bin.zip 包

安装:

  • 解压文件夹并把它放到你的想要放置的文件目录下
  • 配置环境变量
    请添加图片描述
    请添加图片描述
    请添加图片描述
    请添加图片描述

本地仓库

apache-maven-3.8.2 文件夹conf 文件夹下的 settings.xml 文件 里有注释的<localRepository>标签后面加上

<localRepository>D:\apache-maven-3.8.2-bin\apache-maven-3.8.2\repository</localRepository>

注意:

  • repository文件夹 是我自己加的(文件夹名字随意),这个配置本地仓库的路径
  • 路径建议不要中文和特殊符号(可能会导致不明的错误)

在 IntelliJ IDEA 2021.2.1 配置Maven

请添加图片描述
请添加图片描述
请添加图片描述

在 IntelliJ IDEA 用 Maven 创建Web项目

  • 建立新项目
    请添加图片描述

  • 选择maven中的webapp项目
    请添加图片描述

  • 创建项目名称基础信息

    • GroupId:一般是公司名称,或者所有者的名称
    • ArtifactId:一般是什么项目,一般和项目名称一样
    • Version:版本号
      请添加图片描述
  • 选择 Maven 基础信息
    请添加图片描述

  • 长时间的拉取项目资源(要等待)

  • 拉取完成先修改 web.xml 文件(原文件的Servlet是定义为2.5版本的不支持注解方式配置)
    请添加图片描述
    改为

    <?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">
    </web-app>
    
  • 增加必要的文件夹

    • 在main文件夹下增加 java文件夹(放置原码)和 resources文件夹(放置资源)
    • 在src文件夹下增加test文件夹,test文件夹在增加 java文件夹(放置测试原码)和 resources文件夹(放置测试资源)
      请添加图片描述
  • 把main文件夹下的 javaresources文件夹标记为主要目录

    • java标记为 Sources Root
    • resources标记为Resources Root
      请添加图片描述
  • 把test文件夹下的 javaresources文件夹标记为主要测试目录

    • java标记为 Test Sources Root
    • resources标记为Test Resources Root
  • 安装tomcat

  • pom.xml 安装servlet 依赖

pom.xml

安装依赖

贴到

<dependencies>
    <!-- 贴到这里 -->
    <!--
      编写Maven的依赖包,坐标, Servlet包
      (这里没有提示不要紧,直接写,刷新Maven就会帮你下载)
    -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

依赖范围

<dependency>标签里的 <scope> 是依赖范围标签
如 测试依赖(junit)的 <scope> 标签里面是test,servlet 的 <scope> 标签里面是provided

依赖范围对于编译
classpath
有效
对于测试
classpath
有效
对于运行
classpath
有效
例子
compileYYYspring-core
test-Y-Junit
providedYY-servlet-api
runtime-YYJDBC驱动
systemYY-本地的,Maven仓库之外的类库
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>

    <!--
      编写Maven的依赖包,坐标, Servlet包
      (这里没有提示不要紧,直接写,刷新Maven就会帮你下载)
    -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值