Live2D
复制代码

01-Maven工具详解

1、什么是Maven?

Maven是一个自动化构建工具

--完成一个Java项目需要做的工作:
	1、分析项目要做什么,分几个组成模块
	2、涉及项目,通过哪些步骤,使用什么技术,需要的人力多少。花费时间多少
	3、组件团队,招人,购置设备,服务器,软件,电脑等。
	4、开发人员编写代码并测试自己的代码,重复多次
	5、测试人员,测试项目功能是否符合要求
	测试人员测试提交的代码->测试有问题->让开发人员修改->再次提交代码测试人员测试->若还有问题打回再次修改,测试
	多次直到没有问题->测试代码通过
	
--传统项目开发不使用Maven管理项目会出现的问题
	1、项目有许多的模块,模块之间由联系,需要手工管理这些关系,很繁琐
	2、需要很多第三方功能,即jar包,各个jar文件需要自己从网络中下载,一个项目需要的jar文件是很多的
	3、需要管理jar的版本,例如有时候需要的mysql驱动是5.1.5版本的,这时就不能下载其他版本的,不然可能就用不了
	4、需要管理jar包之间的依赖,例如使用mybatis框架需要添加mybatis-3.5.2.jar,当我们需要用mybatis框架实现输
	出日志的的功能时,mybatis框架又需要log4j组件的jar包,就是说jar包有时可以完成一些功能,但有些功能jar包又得
	依赖其他jar包才能完成。这样我们就得下载所需jar包依赖jar包,要做的事成倍增加。
	--我们称这个a.jar包需要那个b.jar包的关系叫做依赖,或者项目中需要MySQL驱动,可以称之为项目依赖MySQL驱动
	底层就是a.class需要使用b.class,a依赖b

--使用Maven进行项目开发的优点
	1、Maven有个maven仓库,管理jar文件
	2、自动下载所需jar包及其文档、源代码
	3、管理jar包的直接依赖,自动帮你下好jar包的依赖jar包
	4、可以管理需要的jar版本
	5、帮助编译程序,将java编译为class
	6、可以测试代码是否正确
	7、可以帮助打包文件,形成jar包或war文件
	8、帮助部署项目
	
--项目的构建
	上面优点中的5、6、7、8过程就是项目的构建
	构建是面向过程的,即一些步骤,这些步骤完成项目代码的编译、测试、运行、打包、部署等等。
	--Maven支持的构建步骤包括:
	1、清理,把之前项目编译的东西删掉,为新的编译代码做准备
	
	2、编译,将项目的源代码编译为可执行代码,即.java->.class
		这个步骤在maven中是批量的,可同时将成百上千的的文件编译为class文件
		而javac一次只能编译一个
		
	3、测试,执行测试程序的代码,验证功能是否正确
		批量的,maven可同时执行多个测试程序的代码,同时测试多个功能
		
	4、报告,对上面测试生成测试结果文件,可以查看测试是否通过
	
	5、打包,将项目中所以的class文件、配置文件等一系列资源文件放到一个压缩文件中。
		这个压缩文件就是项目的结果文件,普通的Java程序,打包成.jar文件。而web应用项目打包成.war文件
	
	6、安装,将5中的jar、war文件安装到本机仓库
	
	7、部署,程序安装好后可以执行了(部署一般不用maven操作,自己手动都方便些)

2、Maven的核心概念

一共有九个:
1、--POM文件
	POM文件,名称为pom.xml,pom(Project Object Model)翻译过来就是项目对象模型
	maven把项目当作一个模型使用,该文件作用就是控制maven构建项目过程以及管理jar依赖的功能。

2、--约定的目录结构
	表示maven项目的目录和所需各种资源文件存放位置都是规定好的

3、--坐标
	是一个唯一字符串,用来表示资源
	
4、--依赖管理
	管理项目中可以使用的jar包
	
5、--仓库管理(了解)
	资源存放的位置

6、--生命周期(了解)
	maven工具构建项目的过程

7、--插件和目标(了解)
	执行maven构建的时候用的工具是插件

下面两个概念以后学
8、--继承
9、--聚合

maven的使用学习,先学习maven命令的使用来完成maven的使用,然后学习在idea中使用maven

3、maven工具的下载与安装

1)下载

从apache官网下载maven的zip文件安装包apache-maven-3.3.9.zip(用的最多,对应的是JDK1.8)
解压到一个maven的文件夹。打开后在bin目录下,如下

其中的mvn.cmd就是一个命令,能够执行maven的项目构建功能。
打开conf目录,如下

其中的settings.xml是maven工具的配置文件。
然后就是lib目录,里面可以看到很多的jar包,maven是用java语言写的,所以需要配置好JDK才能构使用maven

2)配置环境变量

1、在环境变量中创建一个变量名为M2_HOME(很熟悉,跟配置Tomcat一样,称为maven的家)
值路径到解压的maven的bin目录上一级,就是maven的家。
M2_HOME=E:\maven\apache-maven-3.3.9

2、然后在path中新增变量路径,路径为:E:\maven\apache-maven-3.3.9\bin,
也可以用M2_HOME代替,如在path路径前面添加路径:%M2_HOME%\bin

3、--验证
	dos命令窗口执行:mvn -v
成功:
    Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
    Maven home: E:\maven\apache-maven-3.3.9
    Java version: 1.8.0_271, vendor: Oracle Corporation
    Java home: E:\JAVASE1.8\jre
    Default locale: zh_CN, platform encoding: GBK
    OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos"
    
--(这样我们在这台计算机中不借助任何工具就可以单独使用maven了)

4、maven约定的项目目录结构

1)约定:就是大家都遵从的一个规则

--每一个maven项目在磁盘中都是一个文件夹:假设这里项目名为 Hello,目录结构如下

Hello/
  ---/src
  ------/main			#存放主程序java代码和配置文件
  ---------/java		#程序中创建的包和包中的Java代码文件
  ---------/resources	#Java程序中需要用到的配置文件(如SQL映射文件)
  
  ------/test			#存放测试的程序代码和配置文件(不强制要求一定要有)
  ---------/java		#测试程序的包和包中的Java代码文件
  ---------/resources	#测试Java程序中所需要的配置文件
  
  ---/pom.xml			#maven的核心文件(maven项目必须要有)
maven启动的时候先找pom文件,知道要干什么,然后到main中找程序,到test中找测试程序

2)在Projects文件中按照上面的目录结构新建一个Hello项目

注意src目录与pom.xml文件同级,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.studymyself</groupId>
    <!--项目名字-->
    <artifactId>maven-01</artifactId>
    <!--项目的版本号-->
    <version>1.0-SNAPSHOT</version>
    
</project>
在main目录的java文件夹中创建com.studymyself包,其中创建一个HelloMaven类,代码如下
com.studymyself.HelloMaven.java
package com.myselfstudy

public class HelloMaven{
	
	public int add(int a,int b){
		
		return a+b;
		
	}
	
	public static void main(String[] args){
		
		HelloMaven hello = new HelloMaven();
		
		int res = hello.add(10,20);
		
		System.out.println("10+20="+res);
		
	}
	
}
在Hello项目的根目录下,即pom.xml文件所在目录下启动cmd,在dos命令窗口中执行命令:mvn compile
意思是编译main目录下的java目录下的所有java文件
出现编译错误,重新下载了maven3.3.9,将原来的覆盖,后发现还是解决不了问题,找出错误原因是maven工具所用的settings文件是系统盘.m2目录中的settings文件,为什么?如下面所示
F:\Git_Repositories\Maven\Projects\Hello>mvn compile
[ERROR] Error executing Maven.
[ERROR] 1 problem was encountered while building the effective settings
[FATAL] Non-parseable settings C:\Users\钟荣杰\.m2\settings.xml: Duplicated tag: 'mirrorOf' (position: START_TAG seen ...</url> \ua0\n    <mirrorOf>... @172:15)  @ C:\Users\钟荣杰\.m2\settings.xml, line 172, column 15
1.Maven的配置文件(Maven的安装目录/conf/settings.xml ) 
和 Maven仓库下(默认的Maven仓库的是用户目录下的.m2文件,可以另行制定)的settings.xml文件
在Maven中提供了一个settings.xml文件来定义Maven的全局环境信息。
--这个文件会存在于Maven的安装目录的conf子目录下面,或者是用户家目录的.m2子目录下面。
我们可以通过这个文件来定义本地仓库、远程仓库和联网使用的代理信息等。

其实相对于多用户的PC机而言,在Maven安装目录的conf子目录下面的settings.xml才是真正的全局的配置。
而--用户家目录的.m2子目录下面的settings.xml的配置只是针对当前用户的。

当这两个文件同时存在的时候,那么对于相同的配置信息用户家目录下面的settings.xml中
定义的会覆盖Maven安装目录下面的settings.xml中的定义。

用户家目录下的settings.xml文件一般是不存在的,但是Maven允许我们在这里定义我们自己的settings.xml,
如果需要在这里定义我们自己的settings.xml的时候就可以把Maven安装目录下面的settings.xml文件
拷贝到用户家目录的.m2目录下,然后改成自己需要的。
修改.m2目录中的settings用conf目录中的替换,再次编译
F:\Git_Repositories\Maven\Projects\Hello>mvn compile
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building maven-01 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ maven-01 ---
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ maven-01 ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding GBK, i.e. build is platform dependent!
[INFO] Compiling 1 source file to F:\Git_Repositories\Maven\Projects\Hello\target\classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.201 s
[INFO] Finished at: 2021-01-26T19:47:46+08:00
[INFO] Final Memory: 14M/207M
[INFO] ------------------------------------------------------------------------
--注意:
如果是第一次使用maven工具,会自动下载maven工具需要使用的插件(java类),形式都是jar文件
从中央仓库地址下载:https://repo.maven.apache.org
存储到上面所讲的.m2目录的repository目录中:
默认仓库位置(可修改):C:\Users\(登录操作系统的用户名)\.m2\repository
--因为之前用过,已经下载好了

--编译成功的结果是在项目的目录中生成target目录,编译的class文件都放在这里
直接java HelloMaven执行

--修改本机存放资源的仓库位置
通过修改settings文件,来修改仓库位置,怎么修改在配置文件中是有注释的,如下:
<!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
可以看到上面的注释中告诉了我们默认仓库位置:${user.home}/.m2/repository
怎么修改位置:<localRepository>/path/to/local/repo</localRepository>
我们在settings文件中有上面这段注释的下方添加:
<!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
<localRepository>E:/maven/myrepository</localRepository>
这样保存就修改成功了,要注意路径是左斜杠/

如果.m2目录中有settings.xml文件,则在该目录下修改这个配置文件,否者就修改conf目录中的settings文件

以后如果要配置什么,就直接看里面的注释,按注释中的步骤修改添加。修改前必须备份,放在原目录,等待以后备用
还有就是路径必须是非中文的,无论在什么开发中一定杜绝使用中文路径!!!

5、Maven仓库

maven仓库:
1、--定义
	maven仓库就是存放maven使用的jar和项目中需要使用的jar包的目录文件夹
	包括:maven依赖的插件和项目使用的jar(第三方工具)
	
2、--分类
	本地仓库:计算机本地的文件夹,存放的jar包
	
	远程仓库:在互联网上的,需要连接网络才能使用。如
	--中央仓库:
		最权威的,所有开发人员都共享使用的一个集中仓库,地址:https://repo.maven.apache.org
		
	--由于中央仓库共享,人一旦多起来使用,其服务器压力就增大,速度就会变慢,所以有下面的
	--中央仓库镜像:
		中央仓库的备份,在各大洲,重要城市都是镜像,每个洲都有镜像服务器,在哪个洲开发就优先到哪个洲的镜像
	maven先到镜像下载资源,下载不到的再到中央仓库找资源,找到后给镜像,然后镜像给开发人员
	
	--私服:公司内部的,局域网中使用,不对外开放
	
3、--仓库的使用
	不需要开发人员参与,如:
	开发人员需要使用MySQL驱动
	maven首先查看本地仓库->若没有就到私服下载到本地->还没有到镜像下载到私服->仍没有到中央仓库下载到镜像

6、Maven的POM文件

POM文件中的基本信息标签
Project Object Model项目对象模型,maven把一个项目的结构和内容抽象成一个这样的一个模型,
然后在xml文件中声明。所以pom.xml文件是maven的灵魂。

该文件中属性标签代表的信息如下:
<modelVersion>
前面说maven把项目抽象成一个模型,这个标签属性对应的就是模型的版本,
对于maven版本的maven2和maven3,该属性中模型版本号只能是4.0.0
<modelVersion>4.0.0</modelVersion>

<groupId>
该属性代表组织id,一般都是公司域名倒写
    1、域名倒写:com.baidu
    2、域名倒写+项目名:com.baidu.appolo,这是百度的一个项目
<artifactId>
该属性代表的是项目的名称,或是模块名称,对应groupId中项目中的子项目
<version>
该属性代表该项目的版本号,如果项目还是在开发中,是不稳定版本,
在版本后带-SNAPSHOP(意思是快照),版本号使用三位数标识,1.0.0
<!--
	上面三个属性合在一块称之为坐标,是该项目在互联网中的唯一标识。
	其中grouId,公司域名是互联网中唯一的,倒写也是唯一的,使得该项目可以在互联网中唯一。
	而artifactId,是在公司内部项目中模块唯一的。
	添加version版本号。就使得这个项目假如上传到互联网仓库中依据这个坐标唯一识别。
	我们要使用到别人的资源,也是需要依靠第三方资源的坐标才能获取到的,这是一个项目中必须要有的。

	那么如何知道其他资源(项目)的坐标呢?
	访问www.mvnrepository.com:中央仓库,在其中搜索对应资源,例如我们需要mysql驱动,在其中搜索"mysql"
	具体的操作下面粘贴截图
-->
<groupId>com.studymyself</groupId>
<artifactId>maven-01</artifactId>
<version>1.0-SNAPSHOT</version>
    
<packaging></packaging>
该属性表示项目打包的类型,可以为jar、war、rar、ear、pom。默认不写的话是jar

<dependencies>
   <!-- 
	该属性中是包含属性标签的<dependency>,表示可以有很多属性标签的<dependency>
	因为项目需要很多依赖jar包
	-->
    <denpendency>
        <!--
			一个该属性标签表示的一个依赖jar包,用该属性配置依赖,需要填到信息就是坐标
			就是说maven把jar也当作一个项目了,依赖资源坐标的获取下面截图所示
		-->
    </denpendency>
     <denpendency>
        <!--
			不止一个依赖
		-->
    </denpendency>
    ...
</dependencies>
    
<dependencies>
    <!--依赖,相当于Java代码中的import-->
   <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.37</version>
   </dependency>
    <!--那么maven是怎么运作的呢?
		假设在有jar的情况,maven到本地仓库找mysql文件夹(对应的groupId),
		选择mysql-connector-java的文件夹,选择5.3.37版本文件夹,
		取出其中的mysql-connector-java-5.3.37.jar,配置到项目中
  		-->
     <denpendency>
        ...
    </denpendency>
    ...
</dependencies>
    
<properties>
该属性是定义一些配置属性的,如project.build.sourceEncoding定义项目构建源码编码方式,设置UTF-8
    
<build>
该属性定义编译代码和测试代码时的信息配置,如设置编译插件的jdk版本等等    
</build>
    
下面两个以后学
<parent></parent>
<modules></modules>

7、Maven的生命周期

Maven的生命周期就是maven构建项目的过程
--Maven把项目构建的各个过程对应成其生命周期的各个阶段,每一个阶段都提供相应的命令
--Maven独立使用开发项目用到的常用命令如下:
mvn clean:清理,删除原来编译和测试的目录,target目录。但是已经install到仓库中的包不会被清除
mvn compile:编译主程序(只编译src/main/java文件下的java文件),
在当前目录下(项目目录)生成一个target目录,里面存放编译生成的字节码文件
mvn test-compile:编译测试程序(只编译src/test/java文件下的java文件),结果和上面一样
mvn test:测试,生成一个surefire-reports目录,保存测试结果
mvn package:打包主程序,编译、编译测试、测试、按照pom文件中的配置把主程序打包生成jar文件或war包
mvn install:安装主程序,把本工程打包,按照工程的坐标存放保存到本地仓库中
mvn deploy:部署主程序

--maven插件:
	maven这些命令执行时,真正完成这些功能的是插件,即一些jar包,一些类
	
--maven插件类型
	1)单元测试:用junit,是一个专门测试的框架(工具)
	测试的内容:测试类中的方法,每一个方法都是独立测试的。方法是测试的基本单位(单元)
	maven就借助单元测试批量检测类中大量的方法是否符合预期
	使用步骤:
	1、加入junit依赖代码到pom文件中,在中央仓库搜索junit,点击使用最多的,
	选择版本,其中4.11和4.12使用最多
	<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.12</version>
    <scope>test</scope>
	</dependency>
	
	2、在maven项目中的src/test/java目录下,创建测试程序
	推荐的创建类和方法提示:
	1)、测试类的名称是Test+要测试的类名
	2)、测试的方法名称,test+方法名称
	--如测试之前HelloMaven的程序:
	创建测试类:TestHelloMaven
	@Test
	public void testAdd(){
		--测试HelloMaven的add方法是否正确的代码
	}
	其中testAdd叫做测试方法,定义规则如下:
	1)、方法必须是public修饰
	2)、方法必须是没有返回值的
	3)、方法名称自定义,推荐test+测试方法名(遵从驼峰式命名规则)
	4)、在方法上面加上注解@Test

8、Maven的命令演示

演示Maven命令:
mvn clean:清理,删除原来编译和测试的目录,target目录。但是已经install到仓库中的包不会被清除
mvn compile:编译主程序(只编译src/main/java文件下的java文件),
在当前目录下(项目目录)生成一个target目录,里面存放编译生成的字节码文件
mvn test-compile:编译测试程序(只编译src/test/java文件下的java文件),结果和上面一样
mvn test:测试,生成一个surefire-reports目录,保存测试结果
mvn package:打包主程序,编译、编译测试、测试、按照pom文件中的配置把主程序打包生成jar文件或war包
mvn install:安装主程序,把本工程打包,按照工程的坐标存放保存到本地仓库中
mvn deploy:部署主程序
在src/test/java中添加测试代码,测试的是主程序中的HelloMaven,所以编写的测试程序所在包要与HelloMaven中的一致。创建一个com.studymyself.TestHelloMaven类,具体测试代码如下
package com.studymyself;


public class TestHelloMaven{

	@test
	public void testAdd(){
		
        System.out.println("Maven == junit ==执行testAdd()");
        
		//下面编写的是测试add方法是否正确的代码
		HelloMaven hello = new HelloMaven();
		
		int res = hello.add(10,20);
		
		//验证10+20是不是等于30,需要使用junit提供的方法来对比结果
		//junit包中的Assert中的一个方法
		//Assert.assertEquals(期望值,得到的实际值),该方法中如果两个值相等证明正确,不等则抛出异常
		Assert.assertEquals(30,res);
		
	}	

}
需要注意的是单单使用maven的命令构建工程,需要在有pom文件所在的目录下执行maven命令。

第一步:mvn clean

可以看到上图中maven使用清理功能插件,删除了先前编译生成的target

第二步、mvn compile(编译主程序Java文件)

从上图可以知道该命令需要用到两个插件完成功能,一个是编译生成target目录存放class文件的,另一个是将程序所需资源resources拷贝到target/classes当前目录下

第三步、mvn test-compile(编译测试程序java文件)

可以看到里面有四个插件,由于maven的生命周期在执行某个阶段时会将前面的阶段都执行一次,即前面两个插件是
mvn compile所做的那些事

第四步、mvn test(测试)

从上面我们可以知道,执行mvn test命令,maven把前面所有的构建阶段都执行了一遍。所以我们在测试程序再添加一个测试方法时,不再需要执行前面清理编译等命令了。
package com.studymyself;

import org.junit.Assert;
import org.junit.Test;
import com.studymyself.HelloMaven;

public class TestHelloMaven{

	@Test
	public void testAdd(){
		
		System.out.println("测试方法1:Maven == junit ==执行testAdd()");
		
		//下面编写的是测试add方法是否正确的代码
		HelloMaven hello = new HelloMaven();
		
		int res = hello.add(10,20);
		
		//验证10+20是不是等于30,需要使用junit提供的方法来对比结果
		//junit包中的Assert中的一个方法:
        assert: 明确肯定; 断言; 坚持自己的主张; 表现坚定; 维护自己的权利(或权威);
		//Assert.assertEquals(期望值,得到的实际值),该方法中如果两个值相等证明正确,不等则抛出异常
		Assert.assertEquals(30,res);
		
	}
	@Test
		public void testAdd2(){
			
			System.out.println("测试方法2:Maven == junit ==执行testAdd2()");
			
			//下面编写的是测试add方法是否正确的代码
			HelloMaven hello = new HelloMaven();
			
			int res = hello.add(10,20);
			
			//验证10+20是不是等于30,需要使用junit提供的方法来对比结果
			//junit包中的Assert中的一个方法
			//Assert.assertEquals(期望值,得到的实际值),该方法中如果两个值相等证明正确,不等则抛出异常
			Assert.assertEquals(50,res);
			
		}		

}
再次执行测试命令,出现有测试失败的方法,并报错抛出异常。存放结果位置是
[ERROR] Please refer to F:\Git_Repositories\Maven\Projects\Hello\target\surefire-reports for the individual test results.

第五步、mvn package(打包)

注意:当我们的测试程序中有测试方法失败时,是无法打包的,执行该命令会把之前的构建过程都执行一次,测试阶段有失败的话,这个项目肯定没有完成,所以打包会失败

打包文件只包含src/main目录下的class文件和资源文件以及其他文件

第六步、mvn install

(将jar包安装到本地仓库,其他项目需要用就可以直接添加其依赖就行了)

执行完前面的阶段,可以看到将打包好的jar包存放到了本地仓库repository的com\studymyself\maven-01\1.0-SNAPSHOT目录中。怎么存,就是由pom文件中的项目坐标确定的。

有时候我们需要在pom文件中配置编译插件,用build属性标签,如下:

以后想配置什么插件就直接到网上搜索,就能得到,直接复制粘贴不需要自己写

<?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.studymyself</groupId>
    <!--项目名字-->
    <artifactId>maven-01</artifactId>
    <!--项目的版本号-->
    <version>1.0-SNAPSHOT</version>
	
	<dependencies>
   
	<!--测试单元-->
	<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.12</version>
	<!--依赖作用范围-->
    <scope>test</scope>
	</dependency>
	</dependencies>
    
    <build>
    	<!--配置插件标签-->
        <plugins>
        	<!--具体插件配置标签-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <!--插件名称-->
                <artifactId>maven-compiler-plugin</artifactId>
                <!--插件版本-->
                <version>3.8.1</version>
                <!--配置插件的信息-->
                <configuration>
                	<!--告诉maven,项目代码要在jdk1.8上编译-->
                    <source>1.8</source>
                    <!--告诉maven,项目代码要在jdk1.8上运行-->
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

    
</project>
posted @ 2021-08-08 15:17  Milen-jie  阅读(104)  评论(0编辑  收藏  举报