项目管理工具Maven(基础篇)

Maven是项目管理工具,它的主要作用是进行项目构建,提供了标准的,跨平台的自动化项目构建方式,并进行以来管理,即对jar进行统一管理,避免资源版本的冲突。最主要的是maven统一了项目开发结构,对于IDEA和eclipse等不同的集成开发环境都可以使用maven进行统一项目结构。Maven将项目开发和管理过程抽象成一个对象模型(POM)。

maven官网地址:Maven – Welcome to Apache Maven

maven下载地址:Maven – Download Apache Maven

目录

1、Maven下载安装与配置

2、Maven的基本概念

3、第一个Maven项目(IEDA生成)

4、依赖管理


1、Maven下载安装与配置

直接去官网下载即可,有window环境下的版本和linux环境下的版本,直接下载解压就可以了,绿色软件,解压即安装。解压后我们可以看到如下目录,分别为bin文件:核心运行文件,boot文件:类加载文件,conf文件:核心配置文件,lib:相关jar包文件,还有证书之类的。

项目管理工具Maven(基础篇)_第1张图片

我们需要对Maven的环境变量进行配置,需要进行如下配置:

 java-home的配置和maven配置一样的,在安装jdk已经进行了java-home配置,这里是maven-home的配置,如下:项目管理工具Maven(基础篇)_第2张图片

项目管理工具Maven(基础篇)_第3张图片 配置完成后,在命令窗口输入mvn,出现如下窗口即表示配置成功。

项目管理工具Maven(基础篇)_第4张图片

2、Maven的基本概念

1)仓库

仓库用于存放jar包,仓库分为本地的和远程的,远程的又分为中央仓库和私服,私服的作用是存放不公开的资源,对内部开放,不共享。

项目管理工具Maven(基础篇)_第5张图片

2) 坐标

Maven坐标用于描述仓库中资源的位置,主要包含组织号,项目号,版本号三部分。

项目管理工具Maven(基础篇)_第6张图片

3)仓库配置

本地仓库的配置:

在maven的文件夹的conf文件夹内的setting.xml中配置路径, 如下所示:我设置的D盘下的路径为本地仓库位置 ,D:\maven\repository

远程仓库的配置:阿里镜像,在setting.xml中配置如下所示:


nexus-aliyun
central
Nexus aliyun
http://maven.aliyun.com/nexus/content/groups/public

3、第一个Maven项目(IEDA生成)

在IEDA创建一个empty project,然后配置maven如下,主要是换成自己配置的maven版本。不配置使用默认的也可以。

项目管理工具Maven(基础篇)_第7张图片

当然也需要设置一下项目的sdk,如下:

项目管理工具Maven(基础篇)_第8张图片

 接下来是创建maven项目,第一次使用IDEA生成,但不使用模板:如下:

打开项目结构,新建module,然后选择maven如下:

项目管理工具Maven(基础篇)_第9张图片

起名,就是设置坐标。如下:

项目管理工具Maven(基础篇)_第10张图片 然后指定各文件夹的意义:就是将原来灰色的文件夹进行mark

项目管理工具Maven(基础篇)_第11张图片

 创建maven项目如下:
项目管理工具Maven(基础篇)_第12张图片

 接下来是再创建一个java的maven项目,这一次使用IDEA中的模板生成,如下:

 打开项目结构,新建module,然后选择maven并选择如下的模板:项目管理工具Maven(基础篇)_第13张图片

 同样进行标记即可,如下:

项目管理工具Maven(基础篇)_第14张图片

下面使用IDEA中的模板创建一个web项目,选择web-app的那个,如下:

项目管理工具Maven(基础篇)_第15张图片

对于缺少的文件夹需要自己添加上,然后还是要标记一个各个文件夹的内容信息。

项目管理工具Maven(基础篇)_第16张图片

 可以在pom.xml文件中配置tomcat插件,如下:

 
      
        
          org.apache.tomcat.maven
          tomcat7-maven-plugin
          2.1
        
      

然后双击tomcat7下的tomcat:run启动服务器,具体如下:

项目管理工具Maven(基础篇)_第17张图片

浏览器打开如下,表示启动服务器成功。

项目管理工具Maven(基础篇)_第18张图片

4、依赖管理

依赖分为直接依赖和间接依赖,直接依赖就是在当前项目中通过依赖配置建立关系,间接依赖是从当前项目依赖其它项目的资源。

项目管理工具Maven(基础篇)_第19张图片

 对于依赖传递可能出现的冲突问题,首先是路径优先,即1度>2度,然后是声明优先,同级的依赖,配置在前的优先。

项目管理工具Maven(基础篇)_第20张图片

 使用可选依赖可以隐藏自己的依赖,不让其它项目看到。项目管理工具Maven(基础篇)_第21张图片

 对于不需要的依赖,使用排除依赖进行排除,即不使用。

项目管理工具Maven(基础篇)_第22张图片

 依赖范围可以通过scope标签进行设定,常用的依赖范围有四个,complie,test,provided,runtime

项目管理工具Maven(基础篇)_第23张图片

另外,依赖的范围是有传递性的,如下表所示: 

项目管理工具Maven(基础篇)_第24张图片

你可能感兴趣的:(Maven+Git,maven,java,eclipse,intellij-idea)