Maven2基础介绍

Maven2基础介绍- [工具篇]2011-05-21

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://sciencefactory.blogbus.com/logs/129427489.html

首先必须一提的是,Maven2出身名门,它是Apache的一个顶级项目(TLP, Top Level Project)http://maven.apache.org/。全靠Apache社区的大力推广,很多开源项目都“被迫”将自己的项目迁移到Maven2下,这样做的最大好处就是,越来越多的人们都在使用Maven2,它的发展当然也会在众人捧场下越来越快。

Maven2的最大特点是对第三方依赖库进行统一管理,只要使用了Maven2就可以让所有项目都是用统一管理的共享依赖库,每个项目不再需要自己包含jar包,原来每个项目至少都要几十M大小,现在省去了jar包,单个项目只需要几百k。非常适合网上开源项目的使用。

Maven2其实只是一个构建工具,最主要的用途是通过几个简单的命令实现项目的编译,测试,打包,发布,还可以生成项目对应的站点以及报表。

Maven2入门:

假设你根本没用过Maven2,但是也假设你用过Java,配置过JDK,并且用Java写过程序。这样咱们或者可以比较一下使用Maven2来开发项目的不同之处。当然我是不会告诉你有什么不同的,请阁下自行体会。下面进入主题,从安装和运行开始。

初始化Maven2环境

一般来说,介绍Maven2的文章都是让你自己去下载Maven2发布包,安装到本机上后调用一系列命令,在这个过程中Maven2会自动将运行所需的插件和依赖下载到本地。但是这个下载的过程太痛苦了,大多数人无法承受漫无目的的等待,只能选择放弃。

所以我们决定独辟蹊径,向大家推荐一种更快捷的方法。

安装配置Maven2

首先还是要安装好Maven2(前提是已经装好了JDK。)

第一步,下载Maven2的发布包。

下载页面:http://maven.apache.org/download.html

选择的是http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.0.3-bin.zip

将获得的发布包解压。

我们将解压得到的apache-maven-3.0.3放在D盘更目录下,之后的配置都以此为准

配置环境变量

我的电脑(单击鼠标右键)->属性->高级->环境变量

新增一个变量

把%M2_HOME%\bin添加到环境变量PATH中(我是配置在了CLASSPATH中我的path种包含CALLPATH,如果配置的工具多我建议这样)

把这些变量配置好会点确定

然后再打开一个cmd控制台,键入mvn -v,输出下面的结果就表示我们已经把Maven2成功的安装到系统中了。

C:\>mvn -v
Apache Maven 3.0.3 (r1075438; 2011-03-01 01:31:09+0800)
Maven home: D:\apache-maven-3.0.3
Java version: 1.6.0_10-beta, vendor: Sun Microsystems Inc.
Java home: D:\Java\jdk1.6.0_10\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows vista", version: "6.1", arch: "x86", family: "windows"

配置Maven2使用公司内部插件仓库服务器
由于Maven2的安装包并不包括插件,所以在使用时会自动到网络上下载需要使用的插件以及依赖包等。将Maven配置为使用内部插件服务器,可以加快下载速度
Maven2的配置文件放在如下位置 $用户目录/.m2/settings.xml 和 $M2_HOME/conf/settings.xml,查找循序为 先查找 $用户目录/.m2/settings.xml,然后查找 $M2_HOME/conf/settings.xml。

用户目录

Windows环境下的用户目录一般为C:\Documents and Settings\ [Login Name]
Linux环境下的用户目录一般为/home/[Login Name]

用编辑器打开settings.xml文件,找到如下内容

<mirrors>
   <!-- mirror
    | Specifies a repository mirror site to use instead of a given repository. The repository that
    | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
    | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
    |
    <mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
   -->
</mirrors>

加入

<mirror>
     <id>visionsoft</id>
     <url>http://maven2-repo1.visionsoft.net/repo/</url>
     <mirrorOf>central</mirrorOf>
   </mirror>
 
配置本地仓库位置
Maven会将内部或外部服务器下载的插件和库文件放在本地电脑里。缺省位置为$用户目录/.m2/repository,为了能够更好的管理,我们一般调整本地仓库的位置。
打开settings.xml,找到如下设置

<!-- localRepository
 | The path to the local repository maven will use to store artifacts.
 |
 | Default: ~/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->

修改

<localRepository>D:/repository</localRepository>

D:/repository

本文将本地仓库安装在D:/repository下,仓库可以安装在任何位置,只要工作方便即可

以上介绍了Maven2 的安装和一些简单的配置,下面我搜集了一些Maven的命令分享给大家,大家可以试着自己探索一下,技术只有自己亲手动手做了才能知道对错,只有自己动手做了才能真的学会。后面我会继续更新资料希望和大家一起成长

Maven常用命令:
1. 创建Maven的普通java项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=projectName
2. 创建Maven的Web项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=webappName
-DarchetypeArtifactId=maven-archetype-webapp
3. 编译源代码: mvn compile
4. 编译测试代码:mvn test-compile
5. 运行测试:mvn test
6. 产生site:mvn site
7. 打包:mvn package
8. 在本地Repository中安装jar:mvn install
9. 清除产生的项目:mvn clean
10. 生成eclipse项目:mvn eclipse:eclipse
11. 生成idea项目:mvn idea:idea
12. 组合使用goal命令,如只打包不测试:mvn -Dtest package
13. 编译测试的内容:mvn test-compile
14. 只打jar包: mvn jar:jar
15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile
( -skipping 的灵活运用,当然也可以用于其他组合命令)
16. 清除eclipse的一些系统设置:mvn eclipse:clean

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值