Java Web 4 Maven

本文详细介绍了Maven的用途,包括依赖管理、项目结构统一和构建流程标准化;然后讲解了Maven的安装、IDEA中的集成以及依赖管理的核心概念。

1 什么是Maven?

什么是apache?

2 Maven的作用

(1)方便依赖管理

有Maven 不需要再手动导入Jar包 只需要在配置文件中

(2)统一的项目结构

不管你用的是什么开发工具,只要是使用了Maven,那么项目下的目录结构都是一样的:

(3)标准化的项目构建流程

自动化项目构建:我们可以通过Maven可以快速的完成编译、测试、打包、发布等流程

(4)总结:Maven是一款管理和构建java项目的工具

3 Maven概述

(1)介绍

Maven的模型:(通过Maven提供的各种各样的插件来完成项目的标准化构建)

项目对象模型(POM):

仓库:

私服:可以理解为镜像网站,国内访问速度会比访问中央仓库快

(2)安装

4 IDEA集成Maven

主要分为三个方面:

5 依赖管理(Mavan最核心的功能)

(1)依赖配置

(2)依赖传递

依赖关系:

以图表的形式展示依赖关系:

排除依赖:(比如A项目只想依赖B项目,不想依赖B项目下的依赖,那么就用到了排除依赖)

(3)依赖范围

默认情况下(compile):在任意情况下都有效

scope值为test :仅在测试程序中有效

(4)Maven的生命周期

我们主要需要关注的有五个阶段:

生命周期阶段:

当我们运行package阶段,前面的compile阶段也会运行

命令行方式来执行生命周期:

clean 阶段

删除编译好的target目录

compile 阶段

编译当前项目文件,生成的编译文件会存到target目录下

test 阶段

test阶段是运行当前项目中所有的单元测试,那么要想运行单元测试,那么就需要有junit依赖:

测试方法书写:

运行test后的日志:

作者的IDEA不会输出日志以及测试信息 需要将命令加参数

bash 复制代码
 mvn test "-Dsurefire.showSuccessOutput=true"

才会输出

package 阶段

我们在运行package阶段的过程中,其前面的阶段也会被运行:

install 阶段

就是将打好的jar包安装到maven的本地仓库

实际上Maven的生命周期/阶段都是抽象的概念,其并不执行具体的操作,它具体的操作都是由与之绑定的Maven插件所执行的,因为Maven本身就是一个插件执行框架,所有的工作都是由插件完成的。

总结

相关推荐
2301_793086871 小时前
Springboot 04 starter
java·spring boot·后端
seabirdssss4 小时前
错误: 找不到或无法加载主类 原因: java.lang.ClassNotFoundException
java·开发语言
还是鼠鼠4 小时前
tlias智能学习辅助系统--SpringAOP-进阶-通知顺序
java·后端·mysql·spring·mybatis·springboot
gnawkhhkwang4 小时前
io_getevents 和 io_pgetevents 系统调用及示例
linux·c语言·开发语言
喵手4 小时前
使用ASIWebPageRequest库编写Objective-C下载器程序
开发语言·macos·objective-c
weixin_456904274 小时前
C#泛型委托讲解
开发语言·c#
君莫笑几人回4 小时前
关于记录一下“bug”,在做图片上传的时候出现的小问题
java·开发语言·spring boot
技术不支持4 小时前
Qt Creator 11.0.3 语法高亮bug问题
java·服务器·数据库·qt·bug
rockmelodies5 小时前
RSA 解密逻辑
开发语言·python
pointers_syc5 小时前
【设计模式】2.策略模式
java·设计模式·策略模式