Maven学习入门——2016-2-17

一、Maven的基本概念

1.1Mawen是干啥的???

  我们第一次接触Maven一般就是用Maven为我们的项目加入jar包,非常的方便。

  maven到底是干什么的??说白了,maven就是用来管理项目的,就这么简单,管理项目的。

  一个项目在开发之前我们需要做好准备工作,包括我们需要的jar包之类的,maven就有一个仓库,要用那些jar包直接拿来用,不用去跑着跑那去下载,verry  good!!!我们把项目开发好之后要对项目进行打包,直接用maven搞定。

  这就是一个方便我们管理项目的好工具!!!

1.2Maven作用详解

  1、项目构建

    

项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。

 

  

 

  理想的项目构建是高度自动化,跨平台,可重用的组件,标准化的,使用maven就可以帮我们完成上述所说的项目构建过程。

 

  2、依赖管理

    就是可以管理jar包之间的依赖关系,在myeclipse中maven项目的pom文件中Dependency Graph中就有jar包之间的关系

 

是不是感觉很牛逼的样子!!!
二、Maven下载 
  2.1myeclipse自带maven4myeclipse
    myeclipse自带的maven不需要进行下载,但需要激活和配置一下。下面我们来实际操作一下:
        激活方法:window-->preference-->MyEclipse-->Maven4MyEclipse, 勾选复选框(Enable Mave4MyEclipse features)。
                          
          

              配置方法:就在激活方法打开的节点下,有一个Maven节点,展开这个节点,主要配置其下的两个节点,如下:

          Installations:  这一个节点默认使用内置的maven,我们需要使用我们安装的maven,点"add",添加一个我们外部安装的maven即可,注意添加后就勾选上。

          User Settings: 默认的是C盘用户目录下的.m2/settings.xml文件,这里要配置外部安装的maven使用的配置文件,如我使用的就是maven安装目录下的                               conf/settings.xml文件,选择之后别忘了点击一下,下方的"Update Settings"按钮。

                       

  2.2maven的下载

 

  下载地址:http://maven.apache.org/download.cgi

 

  

 

  下载完成后,得到一个压缩包,解压,可以看到maven的组成目录

 

  

 

  Maven目录分析

 

  • bin:含有mvn运行的脚本
  • boot:含有plexus-classworlds类加载器框架
  • conf:含有settings.xml配置文件
  • lib:含有Maven运行时所需要的java类库
  • LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍

 

三、Maven的安装

1、首先要确保电脑上已经安装了JDK(要jdk 1.6+的版本),配置好JDK的环境变量,使用如下的两个命令检查检查JDK安装的情况。

1 Echo %JAVA_HOME%
2 Java -version

  

  2、对apache-maven-3.2.3-bin.zip进行解压缩

  对apache-maven-3.2.3-bin.zip进行解压缩,例如解压到如下目录(解压目录最好不要有中文)

  

  3、设置系统环境变量:MAVEN_HOME

  

  4、设置环境变量Path,将%MAVEN_HOME%\bin加入Path中,一定要注意要用分号;与其他值隔开,如下图所示:

  

  %MAVEN_HOME%\bin代表的就是"E:\apache-maven-3.2.3\bin"目录

这里我有一个疑问就是为什么要给maven配置环境变量,有什么作用???

  我就想到jdk环境变量的配置,配置jdk的环境变量是为了告诉java文件去哪儿找我们的jdk,而且不管在哪个盘我们都可以找到它。我们配置好mave的环境变量的时候,我们用maven管理项目的时候,不管我们的maven项目在哪个盘,我们都可以用maven。

  5、验证Maven安装是否成功

  打开cmd窗口

  

  输入"mvn –v"命令 查看Maven的相关信息,如下图所示:

  

  能够出现这样的信息就说明Maven的安装已经成功了。

  6、设置MAVEN_OPTS环境变量(可选配置)

  由于Maven命令实际上是执行了Java命令,所以可以通过JAVA命令参数的方式来设置MAVEN运行参数。MAVEN_OPTS环境变量正是用于此用途

  MAVEN_OPTS

  -Xms128m -Xmx512m,分别设置JVM的最小和最大内存,如下图所示:

  

四、Maven的简单应用

(一)通过myeclipse运用maven

方法如下:

  1、创建maven工程,新建project,右键选择New Project,勾选快速创建选项,这个选项可以快速创建简单的maven工程。

  2、项目创建成功后,项目目录主要有:主代码目录、主资源目录、测试代码目录、测试资源目录、输出目录(代码编译存放的目录)。

  3、添加项目依赖,查找项目依赖通常有两种方式:1. 直接在eclipse上查找,2. 在私服nexus上查找再复制依赖信息到pom.xml中。在eclipse中查找右键项目或pom.xml,输入关键信息查找,选中要引入的构件,点OK就可以自动引入。

(关于私服nexus:这个私服nexus主要用于一些没有开通外网的公司,只有局域网,我们就可以在一台有外网的电脑上搞上个私服nexus,需要的jar包之类的东西就从这台电脑上获取了,方便了我们日常的开发,提高了开发的效率。)

  4、在nexus中查找依赖,打开nexus输入关键信息点击查找按钮,在搜索结果中找到对应的jar包,复制右下角的那段信息到pom.xml的dependencies下,如图所示。

  5、在MyEclipse上运行mvn命令,右键项目选择Run As--》Maven clean。mvn命令有很多,简单说明下比较常用的命令:

  1. clean 用于清理输出目录target/

  2. compile用于编译项目主代码

  3. test 用于编译运行测试代码

  4. package 接受编译好的代码,打包成可发布的模式

  5. install 将包安装到maven本地仓库

  6. Deploy将最终的包复制到远程仓库

  6、执行以上命令时,clean是不会自动执行的,因为clean和其他5个命令是不同的生命周期,因此需要使用组合命令。

 

  7、在MyEclipse中运行组合命令,右键项目选择Run As--》Maven build...

  前面介绍了怎么运行一些命令,现在讲下怎么样运行实例。在主代码目录和测试目录上添加代码。

 

  8、运行命令clean install,运行结果如图所示,从结果可以看到,命令运行成功,运行了一次测试并且运行通过,同时,将jar打包到项目的target目录下,也安装到maven的的本地仓库上了。

 

  9、将jar包部署到私服nexus上,在pom.xml中添加一些配置,最后发布运行命令

clean deploy,发布后可以到私服nexus查找有没有刚刚部署的jar包。

(二)用DOS命令操作maven

4.1、Maven项目的目录约定

MavenProjectRoot(项目根目录)
   |----src
   |     |----main
   |     |         |----java ——存放项目的.java文件
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |     |----test
   |     |         |----java ——存放所有测试.java文件,如JUnit测试类
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |----target ——项目输出位置
   |----pom.xml ----用于标识该项目是一个Maven项目

4.2、手动创建Maven项目,使用Maven编译

  1、创建项目根文件夹,例如Maven01

  

  2、在Maven01文件夹中创建“pom.xml”文件,如下图所示:

  

  pom.xml文件中的内容如下:

复制代码
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 
 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
 5 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 6     <!--所有的Maven项目都必须配置这四个配置项-->
 7     <modelVersion>4.0.0</modelVersion>
 8     <!--groupId指的是项目名的项目组,默认就是包名-->
 9     <groupId>cn.gacl.maven.hello</groupId>
10     <!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"-->
11     <artifactId>hello-first</artifactId>
12     <!--version指的是版本,这里使用的是Maven的快照版本-->
13     <version>SNAPSHOT-0.0.1</version>
14 </project>
复制代码

  3.编写Java类文件,Maven项目规定,所有的*.java文件必须放在src目录下的main目录下的java目录中,在Maven01项目根目录中创建一个src目录,然后在src目录中创建main目录,在main目录中再创建java文件夹,如下图所示:

  

  在java文件夹下创建一个Hello.java文件,如下图所示

  

  在Hello.java文件中编写如下代码:

1 public class Hello{
2     public static void main(String[] args){
3         System.out.println("Hello Maven");
4     }
5 }

  4.使用Maven编译Hello.java,首先进入到项目根目录,然后使用命令”mvn compile”进行编译,如下图所示:

  

  

  使用Maven编译完成之后,在项目根目录下会生成一个target文件夹,如下图所示:

  

  打开target文件夹,可以看到里面有一个classes文件夹,如下图所示:

  

  classes文件夹存放的就是编译成功后生成的.class文件,如下图所示:

  

  5.使用"mvn clean"命令清除编译结果,也就是把编译生成的target文件夹删掉,如下图所示:

  

  执行完"mvn clean"命令后,target文件夹就会被删除了。

posted @ 2016-02-17 17:32  ~_~乐凡~_~  阅读(557)  评论(0编辑  收藏  举报