项目管理工具——maven(笔记一)

一、什么是maven
maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
maven是跨平台的项目管理工具。主要服务于基于java平台的项目构建,依赖管理和项目信息管理。
二、项目构建方式比较
1、eclipse
手工操作较多,项目构建过程都是很独立的,很难一步完成。比如:编译、测试、部署等
2、Ant
ant只是一个项目构建工具,它没有对项目目录结构进行约定,需要手动指定源文件、类文件等目录地址。同时执行它的task时,需要显示指定依赖的task,这样会造成大量的代码重复。
3、maven
maven不仅是一个项目构建工具,更是一个项目管理工具。它在项目构建工程中,比ant要更全面,更灵活。
三、maven的下载安装
下载链接:https://maven.apache.org/
下载完成解压:
项目管理工具——maven(笔记一)_第1张图片
bin目录用于存放可执行文件,bin目录下的mvn.bat文件存放调用的一些常用命令。会调用一些java_home等的命令,因此需要安装jdk以及配置环境变量。
首先配置家目录M2_HOME,在path环境变量下配置maven的bin目录;
项目管理工具——maven(笔记一)_第2张图片
启动cmd命令,输入mvn -version,出现以下窗口,表示maven安装配置成功。
项目管理工具——maven(笔记一)_第3张图片
boot目录里面有一个类加载器,用于加载maven的类库,类库存放于lib目录下。
三、maven仓库介绍
maven可管理开发过程中的一些jar包,这些jar包存放于仓库当中。其中包括:
1、中央仓库:存放开发过程中的所有jar包,我们所需要的一些jar包,例如JUnit,都可以在这个仓库中下载,仓库地址:http://mvnrepository.com/ 。
2、本地仓库:本地计算机中的仓库
3、远程仓库
maven安装成功以后,会自动生成一个名为.m2的本地仓库,默认存放于C盘。如果想要更改仓库的位置,需要用到conf目录下的settings.xml文件,做法是在目标位置新建m2文件夹,在该文件夹下新建名为responsitory的文件夹,拷贝settings.xml文件到m2目录下,添加responsitory所在位置,如图所示,同时conf下的settings.xml文件也要做相同的更改。
项目管理工具——maven(笔记一)_第4张图片
4、通过mvn help:system下载help插件到本地仓库。
项目管理工具——maven(笔记一)_第5张图片
项目管理工具——maven(笔记一)_第6张图片
四、配置maven启动时申请JVM内存大小
项目管理工具——maven(笔记一)_第7张图片
五、maven的常用命令
1、mvn compile
执行该命令,完成编译操作。
执行完毕后,会生成target目录,该目录中存放了编译后的字节码文件。
2、mvn clean
执行该命令后,会将target目录删除。
3、mvn test
执行该命令,完成单元测试操作。
执行完毕后,会在target目录中生成三个文件:surefire、surefire-report(测试报告)、test-classes(测试的字节码文件)。
4、mvn package
执行该命令,完成打包操作。
执行完毕后,会在target目录中生成一个文件,该文件可能是jar、war。
5、mvn install
执行该命令,完成将打包好的jar包安装到本地仓库的操作。
执行完毕后,会在本地仓库中出现安装后的jar包,方便其他工程引用。
6、mvn clean compile
cmd中录入该命令
组合指令,先执行clean,再执行compile,通常应用于上线前执行,清楚测试类。
7、mvn clean test
cmd中录入改命令
组合指令,先执行clean,再执行test,通常应用于测试环节。
8、mvn clean package
cmd中录入该命令
组合指令,先执行clean,载执行package,将项目打包,通常应用于发布前
9、mvn clean install
cmd中录入该命令
组合指令,先执行clean,载执行install,将项目打包,通常应用于发布前
执行过程:
清理——清空环境
编译——编译源码
测试——测试源码
打包——将编译的非测试类打包
部署——将打好的包发布到资源仓库中。

六、在eclipse上安装maven
直接在eclipse中的install new software选项中搜索m2e,选择maven项目管理的插件,下载即可。
另一种方法是添加本地的maven安装包,方法参考:https://www.cnblogs.com/northern-light/p/7906552.html

你可能感兴趣的:(web测试)