Maven 使用总结

本机环境:

Windows 7 Ultimate 64bit

JDK 6_32

Maven 3.0.4


Maven配置与安装:

1. 确保安装JDK,且要求JDK版本高于1.5

2. 从官网下载maven并解压到你所希望的目录。

3. 更改环境变量:

a. 设置M2_HOME=你安装的目录

b. 更改path添加%M2_HOME%\bin;

c. maven本地仓库:M2_REPO:maven默认将下载的包防止在~/.m2中,~表示用户目录,需要时刻使用M2_REPO变量更改它。

d. 设置MAVEN_OPTS为-Xms128m -Xmx512m,因为JAVA默认的最大可用内存往往不能够满足MAVEN运行的需要,所以需要更改。

4. 将%M2_HOME%/conf/settings.xml复制到%M2_REPO%/settings.xml。这是一条最佳实践,因为maven可以选择配置 %M2_HOME%/conf/settings.xml或者%M2_REPO%/settings.xml,前者是全局范围的,后者是用户范围的,推荐使用用户范围settings.xml是因为可避免影响其他用户,其次方便升级,避免了升级时复制settings.xml并粘贴回升级文件夹。

5. 打开CMD,运行mvn help:system,maven会下载maven-help-plugin,并放置于本地仓库中。


MAVEN坐标详解:

maven坐标为各种构件引入了秩序,任何一个构件都必须明确定义自己的坐标。

而一组maven坐标是通过一些元素定义的:groupId,artifactId,version,packageing,classifier;

<groupId>com.lhy.mvnbook</groupId>
<artifactId>hello-world</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>

groupId:定义当前maven项目隶属于的实际项目;

artifactId:该元素定义实际项目中的一个maven模块。推荐的做法是使用项目名做artifactId的前缀。

version:定义当前版本。

packaging:打包方式

classifier:帮助定义构件输出的一些附属构件。例如主构件是nexus-indexer-2.0.0.jar;

    则可通过其他一些插件生成nexus-indexer-2.0.0-javadoc.jar; nexus-indexer-2.0.0-sources.jar。



示例:创建简单的HelloWorld程序:



MAVAEN基本命令:

mvn clean /compile /test /package /install /dependency/ 

对应功能: 清理/编译/运行测试/打包/安装(安装到maven本地仓库) 


mvn archetype:generate使用archetype插件帮助完成项目骨架创建


maven功能:

1. 模块的聚合与继承配置

2. maven反应堆

3. 重用测试代码(maven打包不会打包测试代码,但有可能该模块会在项目间重用,此时则需要重用测试代码)


其他资料:

maven-shade-plugin示例:http://maven.apache.org/plugins/maven-shade-plugin/examples.html

测试覆盖率报告:测试覆盖率是衡量项目代码质量的一个重要的参考指标。Cobertura是一个优秀的开源测试覆盖率统计工具(http://cobertura.sourceforge.net)

Maven通过cobertura-maven-plugin与之继承,用户可简单实用$ mvn cobertura:cobertura来生成测试覆盖率报告。(报告于target/site/cobertura下的index.html查看)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值