Maven


JavaWeb - Day4 - Maven

Maven

Maven是专门用于管理和构建Java项目的工具,它的主要功能有

  • 提供了一套标准化的项目结构
  • 提供了一套标准化的构建流程(编译,测试,打包,发布...)
  • 提供了一套依赖管理机制
  • (Maven提供了一套标准化的项目结构,所有IDE使用Maven构建的项目结构完全一样,所有IDE创建的Maven项目可以通用)

Maven标准化的项目结构

依赖管理

  • 依赖管理其实就是管理你项目所依赖的第三方资源(jar包、插件...)
  • Maven使用标准的坐标配置来管理各种依赖
  • 只需要简单的配置就可以完成依赖管理

Maven简介

Maven模型

  • 项目对象模型(Project Object Model)
  • 依赖管理模型(Dependency)
  • 插件(Plugin)

Maven安装配置

Maven基本使用

Maven常用命令

* compile:编译
* clean:清理
* test:测试
* package:打包
* install:安装

Maven生命周期

  • Maven构建项目生命周期描述的是一次构建过程经历经历了多少个事件。
  • 同一生命周期内,执行后边的命令,前边的所有命令会自动执行。
  • Maven对项目构建的生命周期划分为3套:

    • clean:清理工作
    • default:核心工作,例如编译,测试,打包,安装等
    • site:产生报告,发布站点等

IDEA配置Maven

IDEA配置Maven环境

Maven坐标详解

什么是坐标

  • Maven 中的坐标是资源的唯一标识
  • 使用坐标来定义项目或引入项目中需要的依赖

Maven坐标主要组成

* groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例如: com.itheima)
* artifactld:定义当前Maven项目名称(通常是模块名称,例如order-service、goods-service)
* version:定义当前项目版本号

IDEA创建Maven 项目

IDEA导入Maven项目

依赖管理

使用坐标导入jar包

实例

<dependencies>

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.34</version>
</dependency>
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.13</version>
</dependency>

</dependencies>

依赖范围

  • 通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围:编译环境、测试环境、运行环境。
  • <scope>默认值:compile

声明:三二一的一的二|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Maven


三二一的一的二