maven是一个项目管理工具,不仅可以把源代码构建为可以发布的项目(包括 编译、打包、测试、分发),还可以生成报告、生成web站点。本文介绍maven的主要使用过程,作为入门
1、maven的安装
windows 下载 地址http://maven.apache.org/download.cgi zip解压缩包,无需安装直接解压即可。
配置环境变量:MAVEM_HOME 和 M2_HOME
变量值修改为自己的解压路径,注意路径内部包含 bin boot conf 等。
PATH环境变量增加 %M2_HOME%/bin
另外:maven安装之前应该完成JDK的安装。
最后通过 win+r 调出cmd 通过命令 mvn -version 检测是否安装成功
到此maven安装成功。
安装成功后执行 mvn help:system 会下载各类文件。 最终输出成功则,maven安装全部完成。
2、Maven各个目录介绍
bin – 保存maven可以执行的命令,其中mvn 和 mvn.bat 就是执行mavne工具的命令。
boot – 里面的plexus-classworlds-2.5.2.jar是一个类加载器。无须理会
config – maven配置文件,其中settings.xml用于配置maven的全局行为。
lib – 包含maven的运行时类库,maven为分模块开发,所有从jar的名字也能略知一二,比如maven-core-3.5.4.jar。此目录也包含了很多地方类库。
LICENSE、NOTICE、README.txt 说明性文档,打开看看即可。
3、 maven的设置
简单一点设置做全局设置,即直接设置conf目录的settings.xml。追求一点的话,将settings.xml复制到用户m2下(win7的用户目录一般为C:UsersAdministrator.m2)仅仅为当前用户设置,一般做全局设置即可。如上两种方式只是作用用户范围不同,其他均一致,settings.xml支持元素和元素的意义也一致。下面介绍主要的配置项目
3.1 localRepository 【本地仓库 [rpztri]】-- 包含一个地址路径,存储maven本地资源库路径,默认是用户目录下(C:UsersAdministrator.m2),考虑重装系统,建议设置其他盘,比如maven的解压路径内部。注意取消注释,设置后生效。重新执行 mvn help:system 。
3.2 interactiveMode 设置maven的交互模式,true处于交互模式用户输入时会进行提示。false不会提示用户输入,而是使用默认值。
3.3 offline 是否为离线状态,当为否时,否否为正表示联网状态,找不到依赖库时会从网络自动下载。
3.4 proxies设置代理。
===》作为入门,只要本机可以直接上网,只需要设置一下 localRepository 即可(甚至也可以不设置),其他查询其他教程深入研究。
补充一句:maven本身是一个空壳,这个壳子只能进行xml解析、管理生命周期、和管理插件。它强大的功能(打包、编译、发布站点等等)都依赖插件来完成,无招胜有招。插件管理,对于maven主要命令 mvn 命令基本格式:
mvn [插件前缀]:[指定目标] -D <属性名>=<属性值>
刚刚使用的 mvn help:system 就符合这个格式, help就是插件(用前缀来表示),system表示指定目标(goal)。此处硬记即可。插件对于maven很重要.
3、maven创建、构建一个简单的项目
插件archetype
命令:mvn archetype:generate -DinteractiveMode=false -DgroupId=org.fkjava -DartifactId=mavenQs -Dpackage=org.fkjava.mavenqs
查看各个插件的意义:http://maven.apache.org/plugins/index.html
报错就多支执行几次。最终会生成了maven的单独的java项目。一般没人这么使用。简单教程知道插件意义即可,再记住archetype用于创建工程即可。
个人理解:往大了说maven是一个项目全项目周期的管理工具,很少有人这个用。往小了说maven就利用其pom.xml进行插件管理,就是维护一个本地jar包仓库(LocalRepository)。
下一篇介绍maven 结合 Eclipse创建工程,并进行插件管理。