##Maven
Maven的两大核心:
*是一款项目管理工具
- 依赖管理:就是对jar包统一管理的过程
坐标:作为jar包,如何给出坐标。
例如:struts2-core-2.3.24.jar
Apache(公司名称)+struts2(项目名称)+2.3.24(版本信息)
maven项目中需要某一个jar包,只需要在maven项目中配置需要jar包坐标信息。
maven程序根据jar包坐标的信息去jar包仓库中查找jar包
2.项目构建:项目在编码完成后,对项目进行编译,测试,打包,部署
maven目录结构:
1. bin:可执行的脚本命令
2. boot:maven运行的类加载器
3. conf:配置文件
4. lib:maven项目运行需要的jar包
配置本地仓库:
1. conf:--> settings.xml配置文件 -->Default: ${user.home}/.m2/repository //jar包本地仓库默认的位置
<localRepository>E:\Maven\repository</localRepository> //重新部署本地仓库的位置
环境变量配置:
1. 复制解压的目录
E:\Maven\apache-maven-3.5.2
2. 环境变量 --> 系统变量 --> 新建
变量名 MAVEN_HOME
变量值 E:\Maven\apache-maven-3.5.2
Path --> 添加 %MAVEN_HOME%\bin
maven仓库分三类:
1. 本地仓库:在程序员的笔记本上
2. 远程仓库【私服】:存在与局域网内的一台服务器
3. 中央仓库:在互联网上,存放了基本上所有开源的jar包,有maven团队维护
寻找jar包的过程 本地仓库 --> 远程仓库 --> 中央仓库
maven【项目】标准目录结构:
1)pom.xml:maven项目核心配置文件
2)src:项目的源码
1. src/main/java目录 【核心代码部分,主体程序源码】
2. src/main/resource 【配置文件部分】
3. src/main/webapp 【页面资源,js,css,图片等】
4. src/test/java 【测试代码部分,单元测试类】
5. src/test/resource 【测试配置文件】
maven常用命令:
1. mvn clean -->删除 target 目录[删除本地编译的所有信息] 清除项目编译信息
2. mvn compile --> src/main下的代码进行编译(.class)放置在target目录下【创建target目录】 编译
3. mvn test -->把测试下面的java文件编译成class文件【在target目录下创建test-classes】 测试
* 单元测试类名有要求:XxxxTest.java
4. mvn packge -->将整个项目打包【打包到taget目录下】 打包
1. web project ---> war包
2. java project --->jar包
5. mvn install ---> 将项目打包并安装到本地仓库【安装】 安装
6. mvn deploy 发布
maven生命周期:
*存在三套生命周期,每一套生命周期相互独立,互不影响。在一套生命周期内,执行后面的命令前面操作会自动执行
1. 清理生命周期 clean
2. 默认生命周期 compile 、test、packge、install、depoly
3. 站点声明周期 site