程序员

Maven - 简介

2017-10-12  本文已影响0人  欧余山南

Maven简介

Maven是一个强大的Java项目构建工具。由于Maven是用Java开发的,因此Maven被更多的用于Java项目中。
构建工具是将软件项目构建相关的过程自动化的工具。构建一个软件项目通常包含以下一个或多个过程:

Maven - 环境配置

Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK。

系统要求

项目 要求
JDK Maven 3.3 要求 JDK 1.7 或以上
Maven 3.2 要求 JDK 1.6 或以上
Maven 3.0/3.1 要求 JDK 1.5 或以上
内存 没有最低要求
磁盘 Maven 自身安装需要大约 10 MB 空间。
除此之外,额外的磁盘空间将用于你的本地 Maven 仓库。
你本地仓库的大小取决于使用情况,但预期至少 500 MB。
操作系统 没有最低要求

步骤 1:检查 Java 安装

操作系统 任务 命令
Windows 打开命令控制台 c:> java -version
Linux 打开命令终端 $ java -version
Mac 打开终端 machine:~ joseph$ java -version

现在打开控制台,执行下面的 java 命令。

操作系统 任务 命令
Windows 打开命令控制台 c:> java -version
Linux 打开命令终端 $ java -version
Mac 打开终端 machine:~ joseph$ java -version
操作系统 输出
Windows java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)
Linux java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)
Mac java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)

步骤 2:设置 Java 环境

步骤 3:下载 Maven 文件

从以下网址下载 Maven 3.2.5:http://maven.apache.org/download.html

步骤 4:解压 Maven 文件

操作系统 位置 (根据你的安装位置而定)
Windows C:\Program Files\Apache Software Foundation\apache-maven-3.2.5
Linux /usr/local/apache-maven
Mac /usr/local/apache-maven

解压文件到你想要的位置来安装 Maven 3.2.5,你会得到 apache-maven-3.2.5 子目录。

操作系统 位置 (根据你的安装位置而定)
Windows C:\Program Files\Apache Software Foundation\apache-maven-3.2.5
Linux /usr/local/apache-maven
Mac /usr/local/apache-maven

步骤 5:设置 Maven 环境变量

操作系统 输出
Windows 使用系统属性设置环境变量。
M2_HOME=C:\Program Files\Apache Software Foundation\apache-maven-3.2.5
M2=%M2_HOME%\bin
MAVEN_OPTS=-Xms256m -Xmx512m
Linux 打开命令终端设置环境变量。
export M2_HOME=/usr/local/apache-maven/apache-maven-3.2.5
export M2=$M2_HOME/bin
export MAVEN_OPTS=-Xms256m -Xmx512m
Mac 打开命令终端设置环境变量。
export M2_HOME=/usr/local/apache-maven/apache-maven-3.2.5
export M2=$M2_HOME/bin
export MAVEN_OPTS=-Xms256m -Xmx512m

添加 M2_HOME、M2、MAVEN_OPTS 到环境变量中。

操作系统 输出
Windows 使用系统属性设置环境变量。
M2_HOME=C:\Program Files\Apache Software Foundation\apache-maven-3.2.5
M2=%M2_HOME%\bin
MAVEN_OPTS=-Xms256m -Xmx512m
Linux 打开命令终端设置环境变量。
export M2_HOME=/usr/local/apache-maven/apache-maven-3.2.5
export M2=$M2_HOME/bin
export MAVEN_OPTS=-Xms256m -Xmx512m
Mac 打开命令终端设置环境变量。
export M2_HOME=/usr/local/apache-maven/apache-maven-3.2.5
export M2=$M2_HOME/bin
export MAVEN_OPTS=-Xms256m -Xmx512m

步骤 6:添加 Maven bin 目录到系统路径中

操作系统 输出
Windows 添加字符串 “;%M2%” 到系统“Path”变量末尾
Linux export PATH=M2:PATH
Mac export PATH=M2:PATH

步骤 7:验证 Maven 安装

操作系统 输出 命令
Windows 打开命令控制台 c:> mvn --version
Linux 打开命令终端 $ mvn --version
Mac 打开终端 machine:~ joseph$ mvn --version

现在打开控制台,执行以下 mvn 命令。

操作系统 输出 命令
Windows 打开命令控制台 c:> mvn --version
Linux 打开命令终端 $ mvn --version
Mac 打开终端 machine:~ joseph$ mvn --version

Maven - POM

Maven的中心思想是POM文件(项目对象模型)。POM文件是以XML文件的形式表述项目的资源,如源码、测试代码、依赖(用到的外部Jar包)等。POM文件应该位于项目的根目录下。POM 包含了关于工程和各种配置细节的信息,Maven 使用这些信息构建工程。
POM文件描述的是构建“什么”,而不是“如何”构建。如何构建是取决于Maven的构建阶段和目标。
每一个项目都有一个POM文件。POM文件即pom.xml,应该放在项目的根目录下。一个项目如果分为多个子项目,一般来讲,父项目有一个POM文件,每一个子项目都有一个POM文件。在这种结构下,既可以一步构建整个项目,也可以各个子项目分开构建。
下图说明了Maven是如何使用POM文件的,以及POM文件的主要组成部分:

image.png

POM 也包含了目标和插件。当执行一个任务或者目标时,Maven 会查找当前目录下的 POM,从其中读取所需要的配置信息,然后执行目标。能够在 POM 中设置的一些配置如下:

POM 举例

<project xmlns="http://maven.apache.org/POM/4.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.companyname.project-group</groupId>
   <artifactId>project</artifactId>
   <version>1.0</version>
 </project>

需要说明的是每个工程应该只有一个 POM 文件。

节点 描述
groupId 这是工程组的标识。它在一个组织或者项目中通常是唯一的。例如,一个银行组织 com.company.bank 拥有所有的和银行相关的项目。
artifactId 这是工程的标识。它通常是工程的名称。例如,消费者银行。groupId 和 artifactId 一起定义了 artifact 在仓库中的位置。
version 这是工程的版本号。在 artifact 的仓库中,它用来区分不同的版本。例如:com.company.bank:consumer-banking:1.0
com.company.bank:consumer-banking:1.1.

Super POM

所有的Maven pom文件都继承自一个父pom。如果没有指定父pom,则该pom文件继承自根pom。pom文件的继承关系如下图所示:

image.png

可以让一个pom文件显式地继承另一个pom文件。这样,可以通过修改公共父pom文件的设置来修改所有子pom文件的设置。在pom文件的起始处指定父pom,例如:

<project xmlns=”http://maven.apache.org/POM/4.0.0″
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd”>
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.codehaus.mojo</groupId>
<artifactId>my-parent</artifactId>
<version>2.0</version>
<relativePath>../my-parent</relativePath>

</parent>
<artifactId>my-project</artifactId>

</project>

上一篇 下一篇

猜你喜欢

热点阅读