Maven是一个项目管理工具,它包含了一个项目对象模型,一组标准集合,一个项目声明周期,一个依赖管理系统和用来运行定义在生命周期阶段中插件目标的逻辑。Maven采用了约定优于配置这一基本原则。在没有自定义的情况下,源码假定是在src/mian/java下、资源文件假定是在src/main/resources下、测试代码假定在src/test下。Maven假定把编译好的字节码放到/target/classes下,并在/target创建一个可分发的JAR文件。Maven被设计成将主要的职责委派给一组Maven插件,这些插件可以影响Maven的生命周期,提供对目标的访问。
Maven的安装
Maven能在所有验证过的JAVA兼容的JDK上工作,所以在安装Maven之前,需要保证已经安装JDK。
下载Maven:你可以从Apache Maven项目的Web站点下在Maven。
安装Maven:不同操作系统之间有很大的区别。在Windows上安装。将Maven解压到特定的文件夹,然后设置PATH和M2_HOME环境变量。
验证Maven安装:打开cmd,运行mvn –v命令。
用户相关的配置
在maven解压目录下/config/settings.xml:改文件包含了用户相关的认仓库和其他信息的配置,用来定自义Maven的行为。
<settings> <servers> <server> <id>tomcat</id> <username>admin</username> <password>admin</password> </server> </servers> <mirrors> <mirror> <id>repo1</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo1.maven.org/</url> </mirror> <mirror> <id>central</id> <mirrorOf>*</mirrorOf> <url>http://mvn.ms.netease.com/nexus/content/groups/public/</url> </mirror> </mirrors> <localRepository>D:/repo</localRepository> </settings>
~/.m2/repository/:该目录是本地仓库。当从远程Maven仓库下载依赖的时候,Maven在本地仓库存储了这个依赖的一个副本。其中本地仓库可以在settings中通过<localRepository>D:/repo</localRepository>修改。
在windows系统~符号表示home目录。在win7就在用户空间下。
Maven Help
Maven Help插件有四个目标。前三个目标active-profiles,effective-pom和effective-settings描述一个特定的项目,它们必须在项目的目录下运行。最后一个目标describe比较复杂,展示某个插件或者插件目标的相关信息。
- help:active-profiles 列出当前构建中活动的Profile(项目的、用户的、全局的)
- help:effective-pom 显示当前构建的实际POM,包含活动的Profile。
- help:effective-settings 打印出项目的实际settings, 包括从全局的settings和用户级别settings继承的配置。
- help:describe。描述插件的属性。它不需要在项目目录下运行。但是你必须提供你想要描述插件的groupId和artifactId。
该选项能让你查看插件所有的目标及相关参数。你可以通过设置mojo参数和plugin参数,获取单个目标的信息。也可以使用-Dfull获取更详细信息。