一、maven 入门

2017-12-24  本文已影响0人  cqzhangjian

Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。Maven也可被用于构建和管理各种项目,例如C#,Ruby,Scala和其他语言编写的项目。Maven曾是Jakarta项目的子项目,现为由Apache软件基金会主持的独立Apache项目。

1.maven 软件安装

图片.png

2.快速创建 maven 项目

-DgroupId : maven 项目的名称
-DartifactId : maven 项目模块名称
-DarchetypeArtifactId :使用maven 的骨架(工程结构)

3.maven 项目工程结构

----| maven 项目模块文件夹
  ---|src 文件
    ---|main 主代码
      ---| java 文件夹:将来都放包
      ---| resouces 文件夹:将来放配置文件
    ---|test 测试代码
      ---| java 文件夹:将来都放包
      ---| resouces 文件夹:将来放配置文件
  ---|pom.xml pom文件

4.maven 坐标

站在 maven 软件的角度看 项目,每个项目都是一个构建而已,一个项目如果要分模块,可以把每个模块看成一个构建。一个构建要依赖其他的构建,如何去引用其他构建,三坐标来描述一个构建。

<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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
  
  <groupId>com.xingxue.mavendemo</groupId>
  <artifactId>mavendemo-day2</artifactId>
  <version>1.0-SNAPSHOT</version>

5.依赖管理

依赖包具有传递性,如果有一个包要依赖其他,其他的包也会同时下载

eg:下载 struts2的包,只需要导入 struts2-core包,就会依赖的下载其他的包

    <dependencies>
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.3.34</version>
        </dependency>
    </dependencies>

依赖包的图如下:


图片.png

查询构建的三坐标网站:http://mvnrepository.com/

6.仓库管理

仓库将来就是用于存放一些 jar 包以及 maven 插件(编译插件、打包的插件......)

本地仓库 --------------------> 私服 ------------------->远程仓库

7.生命周期

Maven有三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,初学者容易将Maven的生命周期看成一个整体,其实不然。这三套生命周期分别是:

注意:它们是相互独立的,你可以仅仅调用clean来清理工作目录,仅仅调用site来生成站点。当然你也可以直接运行 mvn clean install site 运行所有这三套生命周期。

mvn install : 编译 、 测试 、 打包 、 安装,这就是一套默认的构建生命周期
mvn clean: 构建输出的清理
mvn clean install : 先执行 清理,然后编译 、 测试 、 打包 、 安装

常用两套生命周期来玩: mvn clean test 、 mvn clean compile、 mvn clean package....

8. maven 软件 集成到 Eclipse,利用 Eclipse 自带的 maven 插件

图片.png
上一篇 下一篇

猜你喜欢

热点阅读