Maven基础
maven核心内容:依赖管理、
Maven是Apache组织的开源项目,是项目构建工具。用来管理jar包之间的相互依赖关系
Maven是一个项目构建和管理的工具,提供了帮助管理,构建,文档,报告,依赖,发布,分发的方法、可以方便的编译代码,进行依赖管理、管理二进制库等
1. maven的好处
maven的好处在于可以将项目过程规范化,自动化,高效化以及强大的可扩展性
利用maven自身以及其插件还可以获得代码检查报告,单元测试覆盖率,实现持续集成等等
坐标:作为jar包,如何给出坐标
举例:struts2-core-2.3.24.jar
Apache(公司)+struts2(项目名称)+2.3.24(版本信息)
maven项目中需要某一个jar包,只需要在maven项目中配置需要的jar包坐标信息。maven程序根据jar包坐标信息去jar包仓库中查找jar包
2. maven的好处如何实现
maven的两大核心:
** 依赖管理:对jar包管理过程
** 项目构建:项目在编码完成后,对项目进行编译,打包,测试,部署等一系列操作通过命令来实现
使用maven命令将web项目发布到tomcat
进入一个maven的web项目,执行命令mvn tomat:run
3. maven安装、配置本地仓库
maven程序安装前提:maven程序是java开发,需要安装jdk程序
mvn -v:查看maven版本信息
1) maven的下载安装
<1>下载maven:
下载后解压(解压目录路径最好不要有中文)
<2>解压后目录:
bin:可执行的脚本
lib:运行需要的依赖包
conf:配置文件
boot:
<3>配置maven的环境变量
MAVEN_HOME:xxxxxxxxx
PATH:xxxxxxxxin;
JDK环境变量必须配置
JAVA_HOME:maven项目会搜索改环境变量,否则无法运行
2) 配置本地仓库
仓库类型:本地仓库-->私服-->中央仓库
进入maven程序解压后的目录中
配置conf中的setting.xml文件
<localRepository>jar包的路径</localRepository>
4. maven项目标准目录结构
src:项目源码目录
main/java:项目源代码
main/resources:项目配置文件
main/webapp:js、css、jsp、web.xml等文件
test/:测试目录
target:
pom.xml:project object model maven项目核心配置文件
5. maven的常用命令
1. clean:清理
mvn clean
就是删除maven项目下的target目录,编译的class文件等
2. compile:编译
mvn compile
将项目中的.java文件编译为.class文件
3. test:单元测试
mvn test
将项目根目录下src/test/java目录下的单元测试类都会执行
对单元测试类的类名有要求:必须以Test.java结尾
4. package:打包
mvn package
web project --war包
java project --jar包
将项目打包,打包项目到根目录下target目录
5. install:安装
本地多个项目公用一个jar包
打包到本地仓库
6. maven项目的生命周期
在maven中存在三套声明周期,每一套声明周期都是相互独立的,互不影响。在一套声明周期中,执行后面的命令,前面的操作都会自动执行
CleanLifeCycle:清理的生命周期(clean)
defaultLifeCycle:默认声明周期(compile、test、package、install、deploy)
siteLifeCycle:站点声明周期(site)
6. maven整合web项目案例
1. eclipse配置maven
构建索引:
右击从新构建索引
2. 创建maven项目
maven project:创建maven项目或者父项目
maven module:创建maven子模块(子项目)
group id:公司名称 com.major
artifact id:项目名称 crm
Version:版本
Packaging:jar/pom/war 打包(pom父工程选择pom)
Name:
Description:
pom.xml添加信息
<!-- 添加jdk版本信息-->
1. <build> 2. <plugins> 3. <plugin> 4. <groupId>org.apache.maven.plugins</groupId> 5. <artifactId>maven-compiler-plugin</artifactId> 6. <configuration> 7. <source>1.7</source> 8. <target>1.7</target> 9. </configuration> 10. </plugin> 11. </plugins> 12. </build>
3. 查找依赖(直接查找本地仓库的包)
4. 依赖范围
添加依赖范围:默认是compile
单独执行mvn tomcat:run运行
debug run as 需要关联源码
5. maven整合struts2
添加插件(pom.xml右击maven-->添加插件)
添加struts2的依赖