仓库

1)仓库是什么: 仓库是存放东西的, 存放maven使用的jar 和 我们项目使用的jar
> maven使用的插件(各种jar)

  > 我项目使用的jar(第三方的工具)

2)仓库的分类
>本地仓库, 就是你的个人计算机上的文件夹,存放各种jar
>远程仓库, 在互联网上的,使用网络才能使用的仓库
①:中央仓库,最权威的, 所有的开发人员都共享使用的一个集中的仓库,
https://repo.maven.apache.org :中央仓库的地址
②:中央仓库的镜像:就是中央仓库的备份, 在各大洲,重要的城市都是镜像。

​ ③:私服,在公司内部,在局域网中使用的, 不是对外使用的。

3)仓库的使用,maven仓库的使用不需要人为参与。

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

4.pom:项目对象模型,是一个pom.xml文件
1)坐标:唯一值, 在互联网中唯一标识一个项目的

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

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

packaging: 打包后压缩文件的扩展名,默认是jar ,web应用是war
packaging 可以不写, 默认是jar

 3) 依赖
    dependencies 和dependency ,相当于是 java代码中import

	 你的项目中要使用的各种资源说明, 比我的项目要使用mysql驱动

	 <dependencies>
		<!--依赖  java代码中 import -->
	  <dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
		<version>5.1.9</version>
	 </dependency>
 
 </dependencies>

4)properties:设置属性

5)build : maven在进行项目的构建时, 配置信息,例如指定编译java代码使用的jdk的版本等

5.maven生命周期, maven的命令,maven的插件
maven的生命周期:就是maven构建项目的过程,清理,编译,测试,报告,打包,安装,部署
maven的命令:maven独立使用,通过命令,完成maven的生命周期的执行。
maven可以使用命令,完成项目的清理,编译,测试等等

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

Maven 提供一个项目构建的模型,把编译、测试、打包、部署等都对应成一个个的生命周期阶段,并对
每一个阶段提供相应的命令,程序员只需要掌握一小堆命令,就可以完成项目的构建过程。
mvn clean 清理(会删除原来编译和测试的目录,即 target 目录,但是已经 install 到仓库里的包不会删除)
mvn compile 编译主程序(会在当前目录下生成一个 target,里边存放编译主程序之后生成的字节码文件)
mvn test-compile
编译测试程序(会在当前目录下生成一个 target,里边存放编译测试程序之后生成的字节码文件)
mvn test 测试(会生成一个目录surefire-reports,保存测试结果)
mvn package
打包主程序(会编译、编译测试、测试、并且按照 pom.xml 配置把主程序打包生成 jar 包或者 war 包)
mvn install 安装主程序(会把本工程打包,并且按照本工程的坐标保存到本地仓库中)
mvn deploy 部署主程序(会把本工程打包,按照本工程的坐标保存到本地库中,并且还会保存到私服仓库中。
还会自动把项目部署到 web 容器中)。
注意:执行以上命令必须在命令行进入 pom.xml 所在目录!