Maven构建工具学习(一)

Maven

Maven是Apache的一个开源项目,主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。它是一个构建工具,可以帮助我们自动化构建过程,从清理、编译、测试到生成报告,再到打包和部署。

Maven 工程结构和内容被定义在一个 xml 文件中 - pom.xml,是 Project Object Model (POM) 的简称,此文件是整个 Maven 系统的基础组件。关于POM文件配置详解,见博文Maven pom.xml 配置详解

Maven 使用约定而不是配置,意味着开发者不需要再自己创建构建过程,不需要再关心每一个配置细节。因为Maven 为工程提供了合理的默认行为。当创建 Maven 工程时,Maven会创建默认的工程结构。开发者只需要合理的放置文件,而在 pom.xml 中不再需要定义任何配置。且它要求在没有定制之前,所有的项目都有如下的结构:

目录作用
${basedir}存放 pom.xml和所有的子目录
${basedir}/src/main/java项目的 java源代码
${basedir}/src/main/resources项目的资源,比如说 property文件
${basedir}/src/test/java项目的测试类,比如说 JUnit代码
${basedir}/src/test/resources测试使用的资源
${basedir}/target/classes编译后的classes存放路径
${basedir}/target项目JAR文件目录

Maven 环境配置要求

因为Maven是基于Java的,所以需要提前安装JDK。Maven安装要求如下:

项目要求
Java Development Kit (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
操作系统没有最低要求,启动脚本是作为shell脚本和Windows批处理文件。

Maven环境安装配置
Maven 下载

这里使用的事官网最新Maven版本 Maven 3.3.9
下载后,解压下载后的压缩包到本地。

目录类似:D:\Maven\apache-maven-3.3.9
树形目录

Maven 环境变量配置

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

操作系统变量
WindowsM2_HOME=D:\Maven\apache-maven-3.3.9
M2=%M2_HOME%\bin (将%M2%;添加到系统的path变量末尾)
MAVEN_OPTS=-Xms256m -Xmx512m
Linux命令终端中设置环境变量:
export M2_HOME=/usr/local/apache-maven-3.3.9
export M2=$M2_HOME/bin
export MAVEN_OPTS=-Xms256m -Xmx512m
Mac命令终端设置环境变量:
export M2_HOME=/usr/local/apache-maven-3.3.9
export M2=$M2_HOME/bin
export MAVEN_OPTS=-Xms256m -Xmx512m

配置完成后,在命令行窗口中输入mvn --version (或 mvn -v) 来验证Maven的安装配置是否正确。配置正确显示如下:
mvn version

PS : 设置MAVEN_OPTS环境变量,主要用于解决Maven构建项目时,java默认的最大内存不足以支持Maven运行,导致出现java.lang.OutMemeoryError 错误。不建议修改Maven目录下的bat等脚本文件。

修改Maven仓库的位置

Maven仓库,用于存放项目所依赖的所有jar包。
这里设置仓库位置为:E:\workspace\maven\repo ,目录可以自定义,注意避免中文目录。
..\Maven\apache-maven-3.3.9\conf 中的settings.xml文件中添加创建的仓库路径。
Maven repo
配置完成后可以通过命令mvn help:system 来测试,这个命令会打印Java系统属性及平台属性详细信息。初次执行会从中央仓库下载文件到本地。
help:system
下载完成后,进入repo目录,会看到多了很多文件,此时再执行mvn help:system 即会看到Platform Properties Details。
Platform Properties Details


Maven项目
Maven项目创建

进入目录E:\workspace\maven创建项目命令如下:

mvn archetype:generate -DgroupId=com.mavenstudy.app -DartifactId=app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -Dversion=1.0

create project
创建项目时所依赖的jar包第一次均来自Maven中央仓库,后续创建项目时,则从本地的Maven仓库中获得所需要的jar包。
生成项目的目录结构如下:
app
树形目录结构如下:
app

PS:关于POM文件配置详解,见博文Maven pom.xml 配置详解

Mave项目编译

进入项目目录..\maven\app,输入命令mvn clean compile完成项目的编译
compile
其中clean 用于清空targetcompile 用于编译项目代码。
编译后的文件存储在target 目录下,目录结构:
target document
目录树形结构:
tree document

eclipse导入Maven项目

Maven创建的项目,不能直接导入eclipse中,需要使用mvn eclipse:eclipse 命令来转换目录结构
app for eclipse
在将项目导入eclipse前,需要在Classpath Variables中配置Maven仓库:
Window -> Perferences -> Java -> Build Path -> Classpath Variables
classpath variables
配置完成后,通过import导入项目,导入到eclipse中后的目录结构:
eclipse

Maven项目插件更新

需要更新项目中插件的版本,只需要修改POM.xml文件中插件对应的版本号,如上面创建的项目中,使用的junit版本为3.8.1,这里使用junit4的4.8.1版本,修改如下:
junit version setting
修改完成后通过命令mvn eclipse:eclipse 来实现更新。


参考阅读

Maven实战 –许晓斌

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值