1、管理依赖:jar管理,下载,版本
2、构建项目:完成项目代码的编译,测试,打包,部署
3、使用方式:
(1)独立使用maven:使用maven的命令,完成代码的编译,测试,打包等
(2)结合开发工具使用,一般在idea中使用maven:简单,快捷,不需要记命令
①POM:一个文件,名称是pom.xml,pom翻译过来叫做项目对象模型。maven把一个项目当做一个模型使用。控制maven构建项目的过程,管理jar依赖。
②约定的目录结构:maven项目的目录和文件的位置都是规定的。
③坐标:是一个唯一的字符串,用来表示资源的。
④依赖管理:管理你的项目可以使用jar文件
⑤仓库管理:你的资源存放的位置
⑥生命周期:maven工具构建项目的过程,就是生命周期
⑦插件和目标:执行maven构建的时候用的工具就是插件
⑧继承:
⑨聚合:
(1)maven约定的目录结构,约定是大家都遵守的一个规则。
每一个maven项目在磁盘中都是一个文件件(以项目Hello为例)
Hello/
|---/src
|---|---|/main 放主程序java代码和配置文件
|---|---|---/java 你的程序包和包中的jar文件
|---|---|---/resources 你的java程序中要使用的配置文件
|---|---|/test
|---|---|---/java 测试程序包和包中的jar文件
|---|---|---/resources 测试java程序中要使用的配置文件
|---|/pom.xml maven的核心文件【maven项目必须有】
1、组织id,一般是公司域名的倒写,格式可以为:
(1)域名倒写
(2)域名倒写+项目名
1、项目名称,也是模块名称,对应groupId中项目中的子项目
1、项目的版本号。如果项目还在开发中,是不稳定版本,通常在版本后带-SNAPSHOT
2、version使用三位数字标识,例如1.1.0
1、groupId、artifactId、version三个元素生成了一个Maven项目的基本坐标,在众多的maven项目中可以唯一定位到某一个项目。坐标也决定将来项目在仓库中的路径和名称。
1、项目打包的类型,默认是jar,web应用是war
1、表示项目中要使用的各种资源的说明。【相当于java中的import】
2、以mysql为例:
mysql
mysql-connector-java
5.1.9
1、用来定义一些配置属性的,例如project.build.sourceEncoding(项目构建源码编码方式),可以设置为UTF-8,防止出现中文乱码,也可定义相关构建版本号,便于日后统一升级
1、maven在进行项目的构建时,配置信息。例如指定编译java代码使用的jdk版本
仓库是存放东西的,存放maven的插件和项目所需要使用的jar。
1、本地仓库
(1)个人计算机上的文件夹,存放各种jar
2、远程仓库
(1)就是互联网上的,使用网络才能使用的仓库
(2)中央仓库:最权威的,所有开发人员都共享的一个集中的仓库【https://repo.maven.apache.org】
(3)中央仓库的镜像:就是中央仓库的备份。
(4)私服:在公司内部,在局域网内使用,不是对外使用的。
1、maven的仓库的使用不需要人为参与
2、如何使用:(以mysql为例)
(1)maven首先查本地仓库
(2)如果本地仓库没有,则再查私服
(3)私服没有,再查中央仓库的景象
(4)镜像没有,再查中央仓库
(1)maven命令执行时,真正完成功能的是插件,插件是一些jar文件,一些类。
1、用的是junit,junit是一个专门测试的框架(工具)
2、junit测试的内容:测试的是类中的方法,每一个方法都是独立测试的,方法是测试的基本单位(单元)
3、maven借助单元测试,批量的测试类中的大量方法是否符合预期。
4、如何使用:
(1)加入依赖,在pom.xml加入单元测试依赖
(2)在maven项目中的src/test/java目录下,创建测试程序。
①推荐的创建测试类和方法的提示:测试类的名称是Test加上要测试的类名,测试方法的名称是Test加上要测试的方法名。
②假如要测试是HelloMaven
创建测试类 TestHelloMaven
@Test
public void testAdd(){
测试是否正确
}
其中testAdd叫做测试方法,定义规则:方法必须是public、方法必须没有返回值、方法名称自定义、方法必须加注解@Test
1.8
执行以下命令时,必须在命令行进入pom.xml所在目录
1、这条命令是用来编译src/main目录下的所有java文件。
2、当第一次使用这条命令的时候,需要下载一系列文件【maven工具执行操作所需的插件(jar文件)】
(1)默认下载到C:\Users\Administrator\.m2\repository【本地仓库】
(2)如何修改默认下载地址:
①修改maven的配置文件,maven安装目录/conf/settings.xml
②修改
指定你的目录(不要使用中文目录) 3、把main/resources目录下的所有文件拷贝到target/classes目录下
1、清理(会删除原来的编译和测试的目录,即target目录,但是已经install到仓库里的包不会删除)
1、编译测试程序(会在当前目录下生成一个target,里面存放编译测试程序之后生成的字节码文件)
1、测试(会生成一个目录surefire-reports,保存测试结果)
1、打包主程序(会编译、编译测试、测试、并且按照pom.xml配置把主程序打包生成jar包或者war包)
安装主程序(会把本工程打包,并且按照本工程的坐标保存到本地仓库中)
部署主程序(会把本程序打包,按照本工程的坐标保存到本地库中,并且还会保存到私服仓库中,还会自动把项目部署到web容器中)