maven 3.2.1之环境搭建与简单实例

   学习maven中  记录学习的脚步

 Maven基于pom(项目对象模型),管理project lifecycle(项目生命周期),以约定优于配置的原则,运用大量全局可重用的插件,完成项目构建、项目管理等功能。


1.环境搭建

    下载  http://maven.apache.org/download.cgi 下载最新的maven二进制包 apache-maven-3.2.1-bin.zip  解压后 生成文件夹 apache-maven-3.2.1

    配置环境变量 

   名为:M2_HOME  值为:你解压的 apache-maven-3.2.1 路径  例如我的 D:learnsoftwarejavamavenapache-maven-3.2.1

   名为:M2    值为:  %M2_HOME%in

  名为:MAVEN_OPTS  值为:  -Xms256m -Xmx512m     此项可不配置 用于配置maven使用的jvm参数

  在名为 PATH的环境变量中 附加  ;%M2%    

  当然 在使用maven之前 需要配置好java的环境  maven3.2需要的jdk必须为1.6以上版本

测试 打开cmd  输入 mvn -v


出现上图表示maven环境配置成功


2.简单实例

     因为maven本身并不进行代码的编译、测试什么的  它只是管理项目的生命周期,在项目的生命周期间,会调用大量的插件来完成特定的工作,比如编译、测试、安装之类的

所以在第一次进行maven的操作时 maven会从maven的中央插件库中下载需要的插件存放到本地的插件库  所以第一次使用maven的时候 因为下载的原因 会稍微有点慢

   maven生命周期如下

 

 每一个阶段都对应的相应的插件  都完成特定的功能

   

因此 实例的第一步 

     配置本地的插件库位置 这样你比较好控制插件库的大小或者你自己想要单独的使用插件

   进入到 apache-maven-3.2.1conf  下 在settings.xml文件中settings的标签内  添加如下一行 即可修改本地插件库

    

<localRepository>D:learnsoftwarejavamaven
epo</localRepository>

  第二步 使用maven建立一个项目

  如下命令 

mvn archetype:create -DgroupId=com.undergrowth -DartifactId=firstMaven -DpackageName=com.undergrowth.maven -Dversion=1.0.snapshot
过程类似如下

 


创建完成后  产生如下目录



目录结构类似如下 



从工程的最上层看 

   源代码位于  src/main/java+包名/类名

   测试源代码位于 src/test/java+包名/测试类名


第三步 编译

mvn compile 即可



编译完成后 会多一个target目录 下面有编译过后的java字节码文件



第四部 测试

mvn test


表示测试成功的 相应的target目录下也有一些测试的字节码文件


第五步 安装与运行

  安装  mvn install 


安装完成后 会生成相应的项目jar包 如下



运行 

java -cp target/firstMaven-1.0.snapshot.jar com.undergrowth.maven.App


第六步 清理与生成项目文档

  清理  mvn clean  会清理生成的字节码、jar包之类的信息

  mvn site 会生成该项目相关的描述 手册之类的说明性文档 如下

 

第七步 mvn项目转化为eclipse可导入的项目

 mvn eclipse:eclipse  即可


上面即使maven的简单实例 


附 pom.xml的解释

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.undergrowth</groupId>
  <artifactId>firstMaven</artifactId>
  <version>1.0.snapshot</version>
  <packaging>jar</packaging>

  <name>firstMaven</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>




maven的中央插件库的搜索地址  让你方便的添加依赖的项目信息

http://search.maven.org/
示例:





参考 http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html

    http://maven.apache.org/guides/getting-started/index.html

   http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

          http://www.cnblogs.com/fnng/archive/2011/12/02/2272610.html

个人觉得最重要的是理解maven的生命周期 记录学习的脚步


原文地址:https://www.cnblogs.com/liangxinzhi/p/4275573.html