🗒️Maven学习笔记
00 分钟
2023-8-28
2023-12-9
type
status
date
slug
summary
tags
category
icon
password

Maven

Maven概述

Maven是专门用于管理和构建Java项目的工具,它的主要功能有:
提供了一套标准化的项目结构
提供了一套标准化的构建流程(编译,测试,打包,发布…)
提供了一套依赖管理机制

标准化的项目结构

notion image
Maven提供了一套标准化的项目结构,所有lDE使用Maven构建的项目结构完全一样,所有IDE创建的Maven项目可以通用

标准化的构建流程

notion image
Maven提供了一套简单的命令来完成项目构建

依赖管理

依赖管理其实就是管理你项目所依赖的第三方资源(jar包、插件...)
notion image

Maven简介

Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档
notion image
项目对象模型(Project Object Model)
依赖管理模型(Dependency)
插件(Plugin)
notion image

Maven安装配置

1.解压apache-maven-3.6.1.rar既安装完成
2.配置环境变量MAVEN HOME为安装路径的bin目录
3.配置本地仓库:修改conf/settings.xml中的<localRepository>为一个指定目录
4.配置阿里云私服:修改conf/settings.xml中的<mirrors>标签,为其添加如下子标签:

Maven基本使用

Maven常用命令

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

Maven生命周期

Maven构建项目生命周期描述的是一次构建过程经历经历了多少个事件
Maven对项目构建的生命周期划分为3套
clean:清理工作
default:核心工作,例如编译,测试,打包,安装等
site:产生报告,发布站点等
同一生命周期内,执行后边的命令,前边的所有命令会自动执行
notion image
validate(校验)
校验项目是否正确并且所有必要的信息可以完成项目的构建过程。
initialize(初始化)
初始化构建状态,比如设置属性值
generate-sources(生成源代码)
生成包含在编译阶段中的任何源代码。
process-sources(处理源代码)
处理源代码,比如说,过滤任意值。
generate-resources(生成资源文件)
生成将会包含在项目包中的资源文件。
process-resources
(处理资源文件)
复制和处理资源到目标目录,为打包阶段最好准备。
compile(编译)
编译项目的源代码。
process-classes(处理类文件)
处理编译生成的文件,比如说对)ava class文件做字节码改善优化。
generate-test-sources(生成测试源代码)
生成包含在编译阶段中的任何测试源代码。
process-test-sources(处理测试源代码)
处理测试源代码,比如说,过滤任意值。
generate-test-resources(生成测试资源文件)
为测试创建资源文件」
process-.test-resources(处理测试资源文件)
复制和处理测试资源到目标目录。
test-compile(编译测试源码)
编译试源代码到测试目标目录
process-.test-classes(处理测试类文件)
处理测试源码编译生成的文件。
test(测试)
使用合适的单元测试框架运行测试(uit是其中之一)。
prepare-package(准备打包)
在实际打包之前,执行任何的必要的操作为打包做准备。
package(打包)
将编译后的代码打包成可分发格式的文件,比如AR、WAR或者EAR文件。
pre-integration-test(集成测试前)
在执行集成测试前进行必要的动作。比如说,搭建需要的环境。
integration-test(集成测试)
处理和部署项目到可以运行集成测试环境中。
post-integration-test(集成测试后)
在执行集成测试完成后进行必要的动作。比如说,清理集成测试环境。
verify
(验证)
运行任意的检查来验证项目包有效且达到质量标准。
install(安装)
安装项目包到本地仓库,这样项目包可以用作其他本地项目的依赖。
deploy(部署)
将最终的项目包复制到远程仓库中与其他开发者和项目共享。

IDEA配置Maven

以后开发中我们肯定会在高级开发工具中使用Maven管理项目,而我们常用的高级开发工具是IDEA,所以接下来我们会讲解 Maven在IDEA中的使用。

IDEA配置Maven环境

1.选择IDEA中File->Settings
2.搜索maven
3.设置IDEA使用本地安装的Maven,并修改配置文件路径
notion image
notion image
notion image

Maven坐标详解

什么是坐标?
Maven中的坐标是资源的唯一标识
使用坐标来定义项目或引入项目中需要的依赖
Maven坐标主要组成
groupld:定义当前MavenI项目隶属组织名称(通常是域名反写,例如:com..itheima)
artifactld:定义当前Maven项目名称(通常是模块名称,例如order--service、goods-service)
version:定义当前项目版本号
notion image

IDEA创建Maven项目

1.创建模块,选择Maven,点击Next
2.填写模块名称,坐标信息,点击finish,创建完成
3.编写HelloWorld,并运行
notion image
notion image

IDEA导入Maven项目

1.选择右侧Maveni面板,点击+号
2.选中对应项目的pom.xml文件,双击即可
3.如果没有Maven面板,选择
View→Appearance→Tool Window Bars
notion image
notion image
notion image

IDEA配置Maven-Helper插件

1.选择IDEA中File->Settings
2.选择Plugins
3.搜索Maven,选择第一个Maven Helper,点击Install安装,弹出面板中点击Accept
4.重启IDEA
notion image
notion image
notion image
notion image

依赖管理

使用坐标导入jar包

1.在pom.xml中编写<dependencies>标签
2.在<dependencies>标签中使用<dependency>引入坐标
3.定义坐标的groupld,artifactld,version
4.点击刷新按钮,使坐标生效
notion image
notion image

使用坐标导入jar包自动导入

1.选择IDEA中File->Settings
2.在弹出的面板中找到Build Tools
3.选择Any changes,点击ok即可生效
notion image

使用坐标导入jar包-快捷方式

1.在pom.xml中按alt+insert,选择Dependency
2.在弹出的面板中搜索对应坐标,然后双击选中对应坐标
3.点击刷新按钮,使坐标生效
notion image

依赖范围

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

评论
Loading...