1 Maven是什么?
Apache Maven 是一种用作软件项目管理和理解工具。它基于项目对象模型(POM)的概念, 可以管理一个项目的构建、报告以及从项目核心信息中生成文档。
Maven是一种项目管理和理解工具。Maven向开发者提供了一个完整的构建生命周期框架。开发团队几乎不用花时间就可以使用自动化构建项目的基础框架,因为 Maven 使用了一套标准的目录结构和默认的构建生命周期。
在存在多个开发团队的场景中,Maven可以在很短的时间内按标准建立起工作方式。因为大多数的项目配置简单并且可重用,Maven简化了开发者在创建报告,检查,构建和测试自动化配置中的工作。
Maven提供给开发者管理如下过程的方法:
项目构建(Builds)
文档(Documentation)
报告(Reporting)
项目依赖(Dependencies)
软件配置管理(SCMs)
发布(Releases)
分发(Distribution)
邮件列表(mailing list)
总的来说,Maven简化和统一了项目构建的过程。它无缝地处理项目编译,分发,文档,团队合作和其他任务,增加了任务处理的重用性,并可以处理大多数构建相关的任务。
maven在项目创建的时候,会使用默认的项目结构,开发者只需要按照对应地放置文件,而不需要在pom.xml文件中做任何配置。
下面是maven为创建的项目生成的文件结构。
2,环境搭建
2.1 安装JDK
maven是基于java的项目管理工具,因此在安装maven之前首先需要查看maven是否已经安装了JDK。
在windows环境下:
在命令行下,运行java -version,如果输出如下结果,代表jdk已经安装
否则需要下载JDK并安装。
2.2 下载并安装maven
下载地址:
http://maven.apache.org/download.html
将下载的文件解压到你想要安装的目录。例如:
D:\apache-maven-3.5.0-bin
2.3 配置环境变量
配置MAVEN_HOME环境变量,其值为刚刚解压的目录:
D:\apache-maven-3.5.0-bin\apache-maven-3.5.0
在path变量中添加一项:
%MAVEN_HOME%\bin
2.4 验证maven是否已经安装
在命令行输入命令
mvn -version
如果出现如下结果,则说明安装配置成功。
上述操作完成就可以使用maven了。
2.5 maven的本地仓库的配置
maven仓库有三种类型:
本地仓库(local)
中央仓库(central)
远程仓库(remote)
Maven本地仓库是你电脑上的某个目录地址,Maven本地仓库保存着你项目所有的依赖(库的、插件的jar包等等)。当你运行Maven构建时,Maven会自动下载所有依赖的jar包到本地仓库中。这会帮助避免每次项目构建时项目的依赖参考都存储在远程的主机上。
在apache-maven-3.5.0\conf路径下有一个setting.xml文件,打开这个文件,里面有一个localRepository标签,将其值设置为你的本地仓库的路径即可。
上面已经配置好了maven的环境,但是如果想要在IDE中使用,IDE还需要做相关的配置,本文只讲解在eclipse中的配置。
3 eclipse中的maven插件配置
3.1 下载安装maven插件
在新的eclipse版本中,一般已经默认安装了maven插件,如果你的IDE还没有安装maven插件,那么需要在插件市场上下载m2e插件。
3.2 配置环境
在window–preference–Maven–User Settings下,配置好maven中settings.xml的文件路径。
在window–preference–Maven–Installations下,配置maven的安装路径。
这样maven的环境就搭建好了。
下面就可以使用maven插件来创建maven项目了。
4 创建maven项目
在file–new–other下,选择maven project。
本文只演示如何创建web项目,其他类型的项目也一样,maven插件提供了各种项目类型创建的模板。
上面的操作中出现了几个概念:
groupId(项目组织)、artifactId(项目命名)、version(版本号),这样我们才能唯一确定一个项目。
具体含义如下:
这样就生成了一个web项目。
5 maven web项目的结构
下面以笔者之前已经创建好的maven web项目为例,简单说明一下maven项目的结构。
- (1)src/main/java:放置java源文件的目录
- (2)src/main/resources:资源文件,例如属性文件等
- (3)同时,webapp目录下放置的是lib文件目录(这个是笔者自己创建的,主要用来放置自己导入的jar包,而不是通过maven的pom文件导入的依赖)和web.xml。
注:这个web.xml文件可能最刚开始可能maven没有帮你生成,出现如下的错误提示:
Description Resource Path Location Type web.xml is missing andis set to true pom.xml /maven line 6 Maven Java EE Configuration Problem
但是可以自己手动生成,解决xml没有生成的办法
- (4)src/test/java:测试代码存放目录
- (5)target目录下的classes路径存放的是编译后的class文件,对应的是上面的src/main/java,test-classes目录下存放的是测试的类文件。
- (6)项目根目录下的pom.xml文件是maven工程中最重要的一个文件。
POM意为项目对象模型(Project Object Model),是Maven中基本单元。它是一个名为pom.xml的XML文件,总是存在于项目的更目录下。
POM包含了项目相关的信息和Maven用来构建一个或多个项目的各种配置详情。
POM也包含了各种目标操作(goal)和插件。当执行一个任务或者目标操作时,Maven会查找当前目录下的POM。Maven读取POM,从中获得需要的配置信息,然后执行目标操作。部分Maven可以从POM中明确的配置列出如下:
项目依赖(project dependencies)
插件(plugins)
目标操作(goals)
构建(build profiles)
项目版本(project version)
开发者(developers)
邮件列表(mailing list)
对于初学者,我们最关心的就是项目依赖问题,在pom文件下的dependency标签,就是定义一个依赖项的。如果我们需要引入某个依赖项,可以在http://mvnrepository.com/中查找你要找的jar包,然后,就可以找到下面这样的内容,把红线中的内容直接复制到pom文件下的标签下一级。
这样maven插件会自己下载相应的jar包,并存放在你的本地仓库中,如果该jar包已经在本地仓库中有,那么下次如果你用的是同样的jar包,就会直接饮用本地仓库中的jar包。
对于上面的maven生成的文件目录结构,可以自己作相应的配置修改。
这里可以自己定义部署的路径。对于不需要部署的文件目录也可以移除相应的文件。
总结:
本文主要讲了maven的安装配置,eclipse的相关配置,还有pom文件的定义,maven的目录结构,如何创建maven项目,maven项目部署等问题。
感兴趣的读者,还可以参考以下网址:
1、Maven教程
2、Maven官网
到此这篇关于Maven环境安装配置和新建项目介绍的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。