Maven项目管理工具

Maven简介:

是Apache下的开源项目,是纯java开发的额,只是用来管理java项目

使用Maven好处:

1:jar包的统一管理,节省空间

多个项目时不需要每个项目都拥有一份jar包

没有jar包,所占空间小,jar包没有存在于maven项目里面,jar包均放在本地仓库中

Maven项目管理工具_第1张图片

本地仓库索引:加快索引速度

 

项目构建:           编码 编译 测试(junit) 运行 打包 部署

Maven能做的事:         编译 测试(junit) 运行 打包 部署

2:一键构建(不需要在电脑里安装tomcat与eclipse即可实现)

一个tomcat:run  命令即可实现项目的运行

Maven项目管理工具_第2张图片

3:可以跨平台

4:运用于大型项目,可以提高开发效率

5:Maven的分模块开发  

互联网项目是按业务分模块  传统项目是按层分

 

软件安装:解压即可

Maven软件的核心配置文件:

Maven项目管理工具_第3张图片

 

Maven环境变量的配置:

Maven3.3以上的版本所需要的的jdk都是1.7以上的版本

Maven项目管理工具_第4张图片

将MAVEN_HOME加到Path中  

在Path后添加      ;%MAVEN_HOME%\bin;

命令行执行:mvn -v出现如下则配置成功

Maven项目管理工具_第5张图片

 

本地仓库:

引入仓库:settings.xml文件中

Maven项目管理工具_第6张图片

 

三种仓库:

1:本地仓库:自己维护

本地仓库的配置只需要修改settings.xml文件即可

2:私服:公司内部搭建的远程仓库

3:中央仓库:互联网下载的仓库(Apache下的MAVEN团队来维护的)

Maven项目管理工具_第7张图片

Maven的目录结构:

Maven项目管理工具_第8张图片

pom.xml是整个项目的核心文件

Maven项目管理工具_第9张图片

test里面的resources文件夹放的是junit测试所用的配置文件,如果里面没有配置文件默认从main里找

 

注意:Maven在执行命令的时候一定要先进入项目中

Maven的常用命令

Maven项目管理工具_第10张图片

mvn tomcat:run   一键启动

mvn compile:编译(只是编译了主目录的文件)

mvn test:只编译并运行了测试目录test里面的文件

mvn package:将项目打包(web项目打包成war文件,java工程是打包成jar包,依赖管理管理的是jar包,对war包没有作用)

mvn install:将项目发布到本地仓库,也会打包

 

 

Maven的生命周期(了解):

compile test package install deploy(发布到私服上)

执行顺序:compile test package install   

即当执行install时相当于前三个命令都执行了

 

Maven的生命周期有三种

1:clean 属于clean生命周期里面的,与其上四种是没有关系,没有影响的

Maven项目管理工具_第11张图片

2:default : compile test package install

3:site生命周期 :site命令生成项目的站点文档

 

命令与生命周期阶段的关系

不同的生命周期的命令可以同时执行

例如:mvn clean package

 

 

关于项目的搭建:

首先检查编码环境

1:

Maven项目管理工具_第12张图片

2:

Maven项目管理工具_第13张图片

安装插件:M2e插件的安装,不需要安装Maven,eclipse的Mars2版本自带了

插件的配置  两个地方

1:选择3.3.9版本的Maven软件

Maven项目管理工具_第14张图片

Maven项目管理工具_第15张图片

Maven项目管理工具_第16张图片

2:修改默认的本地仓库地址

Maven项目管理工具_第17张图片

 

 

完成以上步骤则Maven在eclipse中的环境没有问题了

注意:new 一个项目时是Maven项目

Maven项目管理工具_第18张图片

Maven项目管理工具_第19张图片

骨架:一个项目的模版

不跳过骨架(不勾选)创建的项目是缺少文件夹的,目录是不全的,需要自己创建

所以在创建项目时都将此项勾选上

 

项目坐标:别人使用这个项目的时候是通过坐标来寻找的

Maven项目管理工具_第20张图片

Group Id:组的名字(公司或者组织的名称)

Artifact Id:模块名称或项目名称

例如:创建crm的dao模块

Packaging:打包方式    jar:创建出来的工程默认是java工程   war:创建出来的工程默认是web包  pom:创建出来的是一个父工程

name:可写可不写    是对项目名称的描述   不起任何作用

name与description都可以不写

 

创建完成后项目左上角或有一个M标志,表示这个项目是Maven工程

 

报错处理:

1:处理红色叉号:

注意:web.xml文件每次都不会帮我们自动生成,因此创建项目后我们需要手动在webapp下创建WEB-INF文件夹与web.xml文件

Maven项目管理工具_第21张图片

 

处理编译版本:将1.5版本换为1.7

将以下代码配置到项目的pom.xml文件中

Maven项目管理工具_第22张图片

Maven项目管理工具_第23张图片

 

2:配置好后项目可能会报错:右击项目

Maven项目管理工具_第24张图片

点击ok会发现项目变成了1.7版本的,配置成功

创建一个servlet文件放到:

Maven项目管理工具_第25张图片

 

3:创建完成后,文件中有很多错误 原因:缺少jar包

解决:

Maven项目管理工具_第26张图片

粘贴进项目中的pom.xml文件

Maven项目管理工具_第27张图片

点击保存

出现:

且项目中出现了需要的jar包:

Maven项目管理工具_第28张图片

 

4:web.xml也会报错,因为创建后,它自动修改了web.xml文件的内容,且将web.xml文件的头部信息也修改了

Maven项目管理工具_第29张图片

头部文件重复了,去掉重复即可

 

 

 

运行项目:

Maven项目管理工具_第30张图片

Maven项目管理工具_第31张图片

eclipse中运行结果:

Maven项目管理工具_第32张图片

拷贝里面的地址在浏览器上运行

 

 

实战小demo:

需求:整合struts2  页面上传一个客户id  跳转页面

创建依赖

创建一个jsp页面:

Maven项目管理工具_第33张图片

jsp文件内容:

 

创建完成后报错,原因是缺少jar包

方法一:右击pom.xml文件

Maven项目管理工具_第34张图片

方法二:在pom.xml文件里面右击

Maven项目管理工具_第35张图片

方法三:点击下方的Dependencies

Maven项目管理工具_第36张图片

输入jsp发现没有反应:因为还没有创建索引

 

创建索引:

Maven项目管理工具_第37张图片

Maven项目管理工具_第38张图片

Maven项目管理工具_第39张图片

再次点开Local Repository发现里面有东西了

 

再次添加依赖选择第一个javax里面的。。。

Maven项目管理工具_第40张图片

点击ok发现pom.xml文件中出现

Maven项目管理工具_第41张图片

添加servlet:

Maven项目管理工具_第42张图片

添加junit:

Maven项目管理工具_第43张图片

添加struct2包:

Maven项目管理工具_第44张图片

添加成功后会看见:

Maven项目管理工具_第45张图片

创建CustomerAction类:

Maven项目管理工具_第46张图片

添加struts.xml配置文件到

在struts.xml配置中配置:

Maven项目管理工具_第47张图片

在web.xml中配置:

Maven项目管理工具_第48张图片

运行发现报错:

Maven项目管理工具_第49张图片

原因:有两个jar包(jsp与servlet)冲突了(tomcat里面已经有了这两个jar包,不需要我们配置的jar包)

解决办法:将jsp与servlet的jar包的scope改为provide

Maven项目管理工具_第50张图片

一个简单的技巧:再次运行时可以不再输入tomcat:run  Maven build是重新运行上一次的命令

Maven项目管理工具_第51张图片

若还是报错,检查pom.xml文件中是否缺少provided

不报错后在浏览器上访问http://localhost:8080/helloworld/findById.action?custId=12

注意:访问时不要掉了.action  因为上面在struts.xml中配置时控制名是这样要求的,也可更改配置

运行结果:

eclipse中的运行结果:

 

 

 

 

依赖范围:默认是compile,若设置为compile是可以在pom.xml文件中不写scope配置的

complie:

编译、运行、测试、打包均需要

provided:

编译(compile)时需要,测试(test)时也需要,运行不需要,打包时不需要

runtime:数据库驱动包

编译的时候不需要,测试需要,运行时需要,打包时需要

test:是针对junit

编译时不需要,测试时需要,运行时不需要

 

 

 

 

添加插件(了解)

在pom.xml文件中:

Maven项目管理工具_第52张图片

选择最后一个:

Maven项目管理工具_第53张图片

修改端口号与访问路径:

Maven项目管理工具_第54张图片

启动后eclipse中的显示的访问路径变了:

浏览器中:

 

以tomcat7运行:

Maven项目管理工具_第55张图片

运行是命令语句是:  tomcat7:run    (因为默认是tomcat6)

 

 

运行时常见问题:说明jdk安装有问题

Maven项目管理工具_第56张图片

 

 

 

 

总结:

Maven的好处

1:节约空间  对jar做了同一的管理(依赖关系)

2:一键构建(一个命令就可以将项目运行起来)

3:可跨平台(因为Maven是基于java开发的,java是可跨平台的)

4:运用在大型项目时可提高开发效率

 

Maven的安装及配置

 

Maven的仓库

1:本地仓库(自己电脑上的)

2:远程仓库(私服)

3:中央仓库

 

依赖的添加(两种方式)

1:从物联网上下载(推荐第二个)

2:在本地重建索引,以索引的方式来添加

 

项目构建

创建Maven project ,勾选骨架,填写坐标,选择打包形式

添加web.xml文件

添加jsp与servle的jar包注意scope选择provided

在pom.xml文件中进行配置将1.5版本换为1.7版本

整合structs2(2.3.24版本) 添加jar包  添加struts.xml文件  web.xml中配置拦截器

 

 

 

 

 

 

 

 

你可能感兴趣的:(Maven项目管理工具)