Skip to content

Maven

Maven 是 Apache 旗下的一个开源项目,是一款用于管理和构建 Java 项目的工具。基于项目对象模型(POM),通过一小段描述信息来管理项目的构建。

Maven 的作用:

  • 依赖管理
  • 统一项目结构
  • 项目构建

坐标

Maven 通过坐标来唯一标识一个项目,坐标由三部分组成:groupId、artifactId、version。

  • groupId:项目组织标识
  • artifactId:项目唯一标识
  • version:项目版本
xml
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>1.0.0</version>

依赖管理

排除依赖

xml
<dependency>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>1.0.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
        </exclusion>
    </exclusions>
</dependency>

依赖范围

依赖的 jar 包默认情况下可以在任何地方使用,可以通过 <scope>...</scope> 设置其作用范围。

  • compile:默认范围,适用于所有阶段
  • test:测试范围,只在测试程序有效
  • provided:主程序有效,测试程序有效,不参与打包
  • runtime:主程序无效,测试程序有效,参与打包

生命周期

Maven 有三套相互独立的生命周期:clean、default、site。

  • clean:清理项目
  • default:核心工作,如:编译、测试、打包、安装、部署等
  • site:生成报告,发布站点

每套生命周期包含一些阶段,阶段是有顺序的,后面的阶段依赖前面的阶段。

常见的生命周期阶段:

  • clean:移除上一次构建生成的文件
  • compile:编译项目的源代码
  • test:测试项目的编译代码
  • package:将编译的文件打包,如:jar、war
  • install:安装项目到本地仓库

在 idea 中,右侧的 maven 工具栏,选中对应的生命周期,双击执行。

最近更新于:

Released under the MIT License