maven最佳实践
2.5 安装m2eclipse
1、http://m2eclipse.sonatype.org/sites/m2e,此为m2eclipse的核心模块Maven Integration for Eclipse(Required)。
2、除了核心组件之外,m2eclipse还提供了一组额外组件,主要是为了方便与其他工具如Subversion进行集成,这些组件的安装地址为http://m2eclipse.sonatype.org/sites/m2e-extras,
1、重要的
n Maven SCM handler for Subclipse(Optional):Subversion是非常流程的版本管理工具。该模块可以帮助我们直接从Subversion服务器签出Maven项目,不过前提是需要首先安装Subclipse。
n Maven SCM Integration(Optional):Eclipse环境中Maven与SCM集成核心的模块。它利用各种SCM工具如SVN实现Maven项目的签出和具体化等操作。
2.7 Maven安装最佳实践
2.7.1 设置MAVEN_OPTS环境变量
通常需要设置MAVEN_OPTS的值为 – Xms128m – Xmx512m,因为java默认最大的可用内存往往不能够满足Maven运行需要。
2.7.2 配置用户范围的settings.xml
2.7.3 不要使用IDE内嵌的Maven
Maven的六大属性
<properties>元素用户可以自定义一个或多个Maven属性,然后在POM的其他地方使用${属性名称} 的方式来引用该属性,这样做在于消除重复。
l 内置属性:主要有两个常用内置属性----${basedir} 表示项目根目录,即包含pom.xml文件的目录;${version} 表示该项目的版本。
l POM属性:用户可以使用该类属性引用POM文件中对应元素的值。例如${project.artfactId}就对应了<project><artifactId>元素的值。
l 自定义属性:用户可以在POM的<properties>元素下自定义Maven属性。例如:
<project> … <properties> <my.prop>hello</my.prop> </properties> … </project> 然后在POM中的其他地方可以使用${my.prop}的时候会被替换成hello |
l Setting属性:与POM属性同理,用户使用setting.开发的属性引用settings.xml文件中xml元素的值,如常用的有${settings.localRepository}指向本地仓库的地址。
l Java系统属性:所有Java系统属性都可以使用Maven属性引用,例如 ${user.home} 指向了用户目录。用户可以使用mvn help:system查看所有的java系统属性。
l 环境变量属性:所有环境变量都可以使用env. 开头的Maven属性引用。例如 ${env.JAVA_HOME} 指代了JAVA_HOME环境变量的值。用户可以使用mvn help:system查看所有的环境变量。
Maven项目报告插件
一般的插件在<project><build><plugins>下配置,而报告插件在<project><reporting><plugins>下配置。