Maven
什么是Maven
它是一个一键式的自动化构建工具。
它可以方便的进行插件的管理,包括MyBatis的逆向工程,分页插件等。
它可以全世界搜索并下载jar包到本地仓库和当前工程中。
项目构建的过程:
1)清理:每次编译前进行清理工作,将上次编译后的内容全部清除,为下一次编译做准备。
2)编译:将.java的文件编译生成.class的文件,将资源文件拷贝到指定的目录下。
3)测试:完成已开发功能的测试,给定输入数据,分析输出结果是否匹配。
4)报告:记录测试结果,为后继功能开发,为扩展功能,为程序员之间的相互调用提供依据。
5)打包:生成jar包或war包。
6)部署:部署到服务器上进行运行。
Maven的核心概念
pom
pom(Project Object Model)项目对象模型,它是所有Maven项目的配置文件,是以pom.xml文件形式存在。
pom.xml文件中规定了项目的gav(作标),添加了所有的依赖,管理了各种插件,制定了资源文件的位置,设置全局变量。
约定的目录结构
它规定了基本的目录结构,但凡是Maven项目都必须遵循。
springmvc_006__ssm ===> 项目名称
src
main ===> 所有java源码文件所在的目录
java ===> .java文件所在的目录
icu
sandink
controller
service
mapper
pojo
util
resources ===> 所有的配置文件所在的目录
jdbc.properties
SqlMapConfig.xml
applicationContext_mapper.xml
applicationContext_service.xml
springmvc.xml
test ===> 所有测试代码所在的目录
java ===> .java的测试文件所在的目录
icu
sandink
controller
service
mapper
pojo
util
resources ===> 测试相关的配置文件
pom.xml
坐标(gav)
项目的唯一定位,每个资源都有唯一的gav坐标,当项目被创建时就规定了gav坐标。
groupId:组织名称,一般是公司域名的倒写:icu.sandink
artifactId:项目名称:springMvc_006_ssm
version:版本号,大的版本号决定大的功能的变动,小的版本号决定功能的修正。
示例:
创建时:
<groupId>com.sandink</groupId>
<artifactId>springmvc_006_ssm</artifactId>
<version>1.0.0</version>
调用时:
<dependency>
<groupId>com.sandink</groupId>
<artifactId>springmvc_006_ssm</artifactId>
<version>1.0.0</version>
</dependency>
依赖管理:添加jar包
使用<dependencies>大标签,再利用<dependency>小标签添加依赖,使用gav定位
<dependencies>
<dependency>
<gav></gav>
</dependency>
<dependency>
<gav></gav>
</dependency>
...
</dependencies>
仓库
Maven的仓库时存放jar包的位置
如果仓库在本机的某个磁盘上,则称为本地仓库
如果仓库在远程的网络上,称为远程仓库
A.远程仓库:
中央仓库:全球程序员都可访问的一个网址,有所有开发所用到的jar包,但访问受限,比较慢
中央仓库镜像:各大洲的程序员访问的一个网址
阿里的仓库镜像:供国内的程序员共享的一个网址(我们会配置阿里的远程仓库地址)
公司的私服:每个公司都会有自己的镜像,通过局域网访问
B.本地仓库repository.zip:
在本机的某个磁盘上解压后的一个目录repository
生命周期
对应每个项目构建的过程,提供生命周期的处理命令
mvn clean:清理
mvn compile:编译
mvn test-compile:测试编译
mvn test:测试
mvn package:打包
mvn install:安装
插件和目标
插件就是集成功能的组件,可以通过<plugins>大标签中的子标签<plugin>来引入插件
较为常用的是JDK的编译插件和MyBatis的逆向工程插件
继承
父工程的约定可以被子工程继承下来
聚合
将多个项目整合成一个工程
下载并安装Maven工具
为本机配置环境变量
{JAVA_HOME: jdk目录}
{MAVEN_HOME: maven目录}
{path:[%JAVA_HOME%/bin;%MAVEN_HOME%/bin]}
检验:
doc: mvn -v
在当前打开工作区中配置Maven工具
file--->settings--->B,E,D--->Build Tools--->Maven...
为新建项目配置Maven工具
Setting for New Project