欢迎访问响应式个人博客!
男生版
女生版
初遇时,她的微笑,她往日的深情、承诺和傻劲,两个人共度的美丽时刻,一一印在回忆里,今天的感情已经比不上从前,但是我爱着恋着往日的她,舍不得离开!
排行
详情
您当前的位置>首页 > 正文
Maven安装与环境配置
2017-10-09 14:11:50   来源:博主开发总结   评论:0 点击:

 

1.它是一种项目管理构建工具,类似的还有:Ant,gradle
2.在Maven官网下载最新版的安装包:http://maven.apache.org/download.cgi
3.Maven的目录结构:
bin目录包含Maven的运行脚本;
boot目录包含一个类加载器的框架,Maven使用它来加载自己的类库;
config是一些配置文件
lib包含的是Maven自身的类库和第三方的类库;
4.Maven环境变量的设置;
 (1).M2_HOME 指向Maven的安装目录;
(比如:D:\Program Files (x86)\apache-maven-3.5.0)
 (2).Path变量最后边加上(;%M2_HOME%\bin)
 验证环境变量是否配置正确:打开黑框口—>输入:mvn –v  
5.第一个实验程序:helloworld目录结构如下:(Maven约定的目录结构)

 
注意:同时需要一个pom.xml文件来管理该项目,这个xml文件是struts2中的,具体路径是:
(libàstruts2-core.jaràMETA-INFàmavenàorg.apache.strutsàstruts2-coreàpom.xml)
将pom.xml删除其中多余内容,仅剩其框架:

编辑完成的状态如下图:

 
 
并将上述文件放置在项目根目录中(与src目录平行的目录)
下一步:cmd—>进入根目录,输入命令:mvn compile对项目进行编译;
6.常用的Maven命令:
 (1).mvn  –v :查看maven的版本;
 (2).mvn  compile 编译项目;
 (3).mvn  test 测试项目;
 (4).mvn  package 进行打包;
 打包后会出现一个target目录,其中的surefire-reports放的是测试报告;
 (5).mvn  clean 清理target包中的内容(编译文件和测试报告)
 (6).mvn  install 安装jar包到本地仓库中;
7.archetype插件,用于创建符合Maven规定的目录骨架;
mvn archetype:generate  

 
8.Maven的基础知识:
(1).构件:任何一个依赖,jar包,插件,都叫做构件;
(2).坐标:所有构件通过唯一坐标进行标识;一般包含三个:
   公司域名反写.项目名
项目名-模块名
   
(3).仓库:用来管理本地的依赖,分为两种:本地仓库和远程仓库,如果本地仓库中没有依赖的资源的话,它会Maven全球的中央仓库去查找下载到本地;
(4).镜像仓库:国内的仓库镜像了国外的仓库;
 在setting.xml中可以使用阿里的镜像啦
mirror>15   
alimaven16      
central17       
aliyun maven18         http://maven.aliyun.com/nexus/content/repositories/central/19  

 
9.使用eclipse搭建maven步骤
(1).找到eclipse的安装目录,找到eclipse.ini文件编辑如下:

 
(2).
9.Maven的生命周期和插件:
 (1).一个完整的项目过程包括:
   清理(clean)、编译(compile)、测试(Test)、打包(package)、集成测试、验证、部署(install);
 (2).Maven 对项目的管理进行了抽象,抽象出了生命周期,插件是对生命周期的具体实现;
 (3).Maven 定义了独立的三套生命周期,
它们相互独立,每个生命周期都包含不同的阶段,这些阶段又都是有顺序的
三个周期及其阶段分别是分别是:
Clean:清理项目;
阶段1:pre-clean:执行清理前的工作;
阶段2:clean:清理上一次构建生成的所有文件;
阶段3:pos-clean:执行清理后的文件;
Default:构建项目(它是最核心的):
compile、Test、package、install都属于这个生命周期中;
Site:生成项目的站点;

 
10.pom.xml:是Maven的核心管理文件,用于项目描述,组织管理、依赖管理和构建信息的管理;
其中包含许多元素:
:指定当前pom的版本;
:用于定义maven属于哪一个实际的项目;
模块标识,标识实际项目中的一个模块儿
代表项目的版本号,一般有三个数字组成;第一个0表示大版本号,中间的一个0表示分支版本号,最后的一个0表示小版本号;常见的单词有这几个:
Snapshot :快照
Alpha : 内部测试;
Beta:公测版本;
Release:稳定;
GA:正式发布;
:表示maven项目的打包方式,默认是jar,还可以是war,zip,pom。
:项目的描述名;
:项目的地址;
:项目描述;
:开发人员列表;
:许可证信息;
:组织信息;
重要的是下边这些标签:
:依赖列表,它里边可以包含以下的标签:
:依赖项
:依赖范围;
:他有两个值true,false(默认),设置依赖是否可选;
:排除依赖传递列表;
:排除的依赖项
:依赖的管理,他里边可以包含以下的标签:
:它不会实际的被依赖;主要用于定义在父模块中,用于被子模块继承;
11.maven提供了三种classpath,分别是:
编译(compile):默认的范围,编译、测试、运行都有效;
测试(test):junit的依赖范围就是这个;
运行:
12. :依赖范围,它的值有6种:
compile:默认的范围,编译、测试、运行都有效;
provided:在编译和测试的时候有效,运行时不会加入;
runtime:在测试和运行时有效;
  test:只在测试的时候有效;
system:在编译和测试的时候有效,有很大的不可移植性;与本机系统向关联;
import:导入范围,他只使用在,表示从其他pom中导入dependency的配置;
12.Maven项目中会发现jre System Library版本不对,这个是Maven设置的默认的,可以修改,如下图;

修改是在setting.xml中加入以下代码:

 
13.依赖冲突:当A和B都依赖一个构件的不同版本的时候,对于同时依赖A和B的C来说,是依赖此构件的哪个版本?原则如下:
短路优先:优先解析路径短的版本
先声明先优先:在路径相同的情况下;
14.maven的聚合和继承;
15.使用maven创建web工程,步骤如下:
(1).右击ànewàMavenàmaven projectà选择maven-archetype-webApp(此时src-main-webapp-web-info下的index.jsp会报错,因为pom.xml中没有servlet依赖)
(2).给pom.xml中添加servlet依赖,如下图:
 
(3).手动健全maven的约定目录:创建
src/main/java
  src/test/java
(4).检查并确定class文件的输出路径:
方法:工程右击àBuild pathàConfigure build path,
确保所有的路径都在target下的classes文件夹,如下图:
  
(5).将项目转化成web项目;方法:
项目右击à属性àProject Facetsà勾选上Dynamic web Module
(6).修改部署时候的默认配置;
方法:项目右击à属性àDeployment Assemblyà删除掉测试用的路径;
(7).部署到服务器后,浏览器测试

相关热词搜索:Maven安装与环境配置(Windows)

上一篇:浏览器兼容性问题怎么解决?
下一篇:使用CSS3制作文字、图片倒影

收藏