Web后端开发之Maven

Maven

Mven是apache旗下的一个开源项目,用来管理和构建java项目的工具。

通过一小段描述信息来管理项目。

Maven的作用

**1.依赖管理:**方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题

以前用某个jar包需要下载到项目中才能用,而且更新时要更新所有依赖的jar包,十分不方便,maven只需要在pom.xml中写dependency,maven会自动联网下载对应的依赖

**2.统一的项目结构:**提供标准、统一的项目结构

不同软件构建的java项目的目录结构有差异

**3.项目构建:**标准跨平台的自动化项目构建方式

清理、编译、测试、打包、发布都支持,并且把相应的文件放到target目录下面

导入Maven

依赖管理

依赖配置

依赖配置:

如果不知道依赖的坐标信息,可以在mvnrepository.com查询坐标,然后粘贴到pom.xml文件中,最后点击刷新

依赖传递

排除依赖:主动断开依赖的环境,被排除的资源无需制定版本

依赖范围

通过<scope>xxxx</ scope>确定范围

声明周期

3套独立的生命周期:

1.clean:清理工作,移除上一次构建生成的文件

2.default:核心工作:编译、测试、打包、安装、部署

compile:编译项目源代码

test:使用合适的单元测试框架运行测试

package:将编译后的文件打包

install:安装项目到本地仓库

3.site:生成报告、发布站点

阶段有顺序,在同一套声明周期中,运行后面的阶段,前面的阶段都会运行

相关推荐
我不是混子1 小时前
奇葩面试题:线程调用两次start方法会怎样?
java·后端
凤年徐1 小时前
【C++模板编程】从泛型思想到实战应用
java·c语言·开发语言·c++
仙俊红1 小时前
深入理解 ThreadLocal —— 在 Spring Boot 中的应用与原理
java·spring boot·后端
飞鱼&2 小时前
RabbitMQ-高可用机制
java·rabbitmq·java-rabbitmq
zcyf08092 小时前
rabbitmq分布式事务
java·spring boot·分布式·rabbitmq
程序员小假2 小时前
我们来说一说动态代理
java·后端
360智汇云2 小时前
k8s共享存储fuse-client三种运行方案对比
java·linux·开发语言
Rinleren2 小时前
企业级 K8s 运维实战:集群搭建、微服务暴露(Ingress)、监控告警(Prometheus)全流程
java·容器·kubernetes
熙客2 小时前
Session与JWT安全对比
java·分布式·安全·web安全·spring cloud