maven详解

maven详解

一、maven简介
1、概念

Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model)、一组标准集合、一个项目生命周期(Project Lifecycle)、一个依赖管理系统(Dependency Management System)和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。

Maven能够很方便的帮你管理项目报告,生成站点,管理JAR文件等等。

2、原理

在这里插入图片描述

二、window下maven的安装
1、准备工作

解压下载好的maven,并新建repository文件夹
在这里插入图片描述

2、修改maven下config文件夹中settting.xml配置文件,指定repository的文件件路径
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
    
 <!-- 1.本地仓库地址改成repository文件夹的路径地址 -->
  <localRepository>D:\Frame\repository</localRepository>
    
 <!-- 2.仓库镜像下载jar包地址可换可不换 -->
  <mirrors>
	<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>
  </mirrors>
    
  <!-- 3.jdk要改成和本机配置的jdk版本一致 -->
  <profiles>
 	<profile>
      <id>jdk-1.8</id>
      <activation>
        <jdk>1.8</jdk>
      </activation>
	  <properties>
			<maven.compiler.source>1.8</maven.compiler.source>
			<maven.compiler.target>1.8</maven.compiler.target>
			<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
	  </properties>
    </profile>
  </profiles>
    
</settings>
3、配置maven环境变量
  1. 新建系统变量
    在这里插入图片描述
  2. 设置path路径地址:即在path原来变量值之后加入”%M2_HOME%\bin”
    在这里插入图片描述
4、验证maven是否安装成功

Window键+R==运行命令行–输入cmd
在这里插入图片描述备注:检测maven是否安装成功也可以使用mvn -version命令

5、idea集成maven
  1. 打开全局设置
    在这里插入图片描述2. 找到maven进行如下设置
    在这里插入图片描述
6、创建maven工程
  1. 创建工程
    在这里插入图片描述
  2. 选择Maven
    在这里插入图片描述3. 填写工程的组名和工程名

在这里插入图片描述4. 确认工程名和位置
在这里插入图片描述

三、maven功能介绍
<?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>

    <!--组名:唯一ID名-->
    <groupId>com.shun.mavenProject</groupId>
    <!--工程名-->
    <artifactId>mavenProject</artifactId>
    <version>1.0-SNAPSHOT</version>
    <!--
        1、maven打包方式:放到tomcat中运行的打成war包,放到工程中使用的是jar包
           备注:<packaging>jar</packaging>,执行install命令:即将maven工程打成jar包
		   父工程打包方式为pom
    -->
    <packaging>war</packaging>

    <!--
        2、maven的生命周期:
          test:测试,将java源文件翻译成字节码文件
          clean:清空,删除字节码文件
          install:将maven按照指定的打包方式打包到本地仓库中去
    -->

    <!--4、动态抽取版本号-->
    <properties>
        <p6spy.version>2.1.4</p6spy.version>
        <mysql.java.version>5.1.6</mysql.java.version>
    </properties>

    <dependencies>
        <!--
        3、查询依赖的写法:
        网上搜jar包:直接在浏览器输入maven.aliyun,就可以通过这个平台查询所需jar包及依赖
        -->

        <!--引入p6spy的依赖-->
        <dependency>
            <groupId>p6spy</groupId>
            <artifactId>p6spy</artifactId>
            <!--动态版本号-->
            <version>${p6spy.version}</version>
        </dependency>
        <!--引入mysql依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>${mysql.java.version}</version>
        </dependency>

    </dependencies>
    
    <!--插件:maven指定jdk版本-->

</project>
四、maven构建聚合工程
1、聚合工程:工程里面包含子工程

在这里插入图片描述

2、创建子工程:选中父工程右键New–>Module(选择Maven)

在这里插入图片描述在这里插入图片描述

3、maven工程添加webapp
  1. 在对外访问的工程main文件夹下新建一个文件夹webapp

  2. webapp下建文件夹WEB-INF

  3. 设置对外访问的路径及生成web.xml
    在这里插入图片描述

4、设置工程打包方式
  1. 父工程打包方式:pom,子工程如果跑服务器则打包为war,子工程如果为工具类打包成jar,比如实体类的打包方式为jar。

  2. 子工程若不指定打包方式默认为jar,子工程会继承父工程的jar包,父工程一般不写代码,主要用来管理子工程。

<!--动态抽取版本号-->
<properties>
    <p6spy.version>2.1.4</p6spy.version>
    <mysql.java.version>5.1.6</mysql.java.version>
</properties>

<!--子工程不可以继承的jar包-->
<dependencyManagement>
    <dependencies>      
        <!--引入p6spy的依赖-->
        <dependency>
            <groupId>p6spy</groupId>
            <artifactId>p6spy</artifactId>
            <!--动态版本号-->
            <version>${p6spy.version}</version>
        </dependency>
        <!--引入mysql依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>${mysql.java.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

<!--子工程可以继承的jar包-->
<dependencies>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.8</version>
    </dependency>
</dependencies>
  1. 子工程使用jar包,包括使用其他打包方式为jar的子工程
<dependencies>
    <!--引入p6spy的依赖-->
    <dependency>
        <groupId>p6spy</groupId>
        <artifactId>p6spy</artifactId>
        <!--此处不需要指定版本号,在父工程已经指定-->
    </dependency>
    <!--引入实体类模块依赖:实现模块之间的通信-->
        <dependency>
            <groupId>com.shun.java-entity</groupId>
            <artifactId>java-entity</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
</dependencies>
五、maven直接创建webapp工程
1、新建maven工程,并选择webapp

在这里插入图片描述

2、建好webapp工程后在main文件夹下新建src和resources文件夹

在这里插入图片描述

3、将src文件夹标记为Sources Root

在这里插入图片描述

4、将resources标记为Resources Root

在这里插入图片描述

5、完成版工程结构

在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值