后端Web开发之Maven

1.java项目构建工具maven介绍

Maven是apache旗下的一个开源项目。Apache软件基金会,成立于1999年7月,是目前世界上最大的最受欢迎的开源(源代码开放)软件基金会也是一一个专门为支持开源项目而生的非盈利性组织。

apache开源项目网址: Welcome to The Apache Software Foundation!

maven功能:

使用maven生成的项目结构都是统一的,因此不管使用哪款开发软件,都可以将maven工程直接导入。

在IDEA中,右侧maven提供了指令用于编译、打包等功能,指令完成后会存放在target目录下,这些指令是跨平台的。

大体结构:

pom.xml中配置的一小段信息来描述maven工程。dependency中分别是当前依赖归属的组织,模块名称和版本。这三项信息就叫做坐标。添加坐标后,maven就会自动的从仓库中查找这个依赖,实际上坐标就是查找的路径:ch/qos/logback/log-classic/1.2.11

查找顺序:本地--远程(若存在的话)--中央

2.安装配置

安装步骤如下,配置阿里云私服是为了提高下载速度,因为中央仓库是放在国外的

3.依赖配置

如果没有提示依赖的信息,可以去中央仓库(https://mvnrepository.com/)查找这个依赖,里面有这个依赖的坐标信息直接复制粘贴就行了。

4.依赖传递

我们只引入了第一个依赖,后面两个依赖是自动引入的。这就是依赖传递

A依赖B,B依赖C,那么C也会传递到A中。绿色框的是直接依赖,黄色框是间接依赖。

如果不需要间接依赖,可以通过标签exclusion去断开依赖,并且不需要指定版本

5.依赖范围

6.生命周期

生命周期中有若干个阶段,一般只关注以下五个阶段。在同一生命周期中,后面的阶段基于前面的阶段,也就是运行后面(比如install)阶段时,compile--package都会运行。

maven是一个插件执行框架,当点击这些阶段时,实际上是运行了Plugins中的这些插件去完成了对应的工作。

相关推荐
毕设源码-朱学姐9 分钟前
【开题答辩全过程】以 办公自动化管理系统为例,包含答辩的问题和答案
java·eclipse
李宥小哥3 小时前
C#基础11-常用类
android·java·c#
小许学java4 小时前
数据结构-ArrayList与顺序表
java·数据结构·顺序表·arraylist·线性表
Java 码农5 小时前
Centos7 maven 安装
java·python·centos·maven
涵涵(互关)5 小时前
Maven多模块项目MyMetaObjectHandler自动填充日期未生效
spring·maven·mybatis
harmful_sheep5 小时前
maven mvn 安装自定义 jar 包
java·maven·jar
李贺梖梖5 小时前
Maven初识
maven
007php0076 小时前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
JH30736 小时前
第七篇:Buffer Pool 与 InnoDB 其他组件的协作
java·数据库·mysql·oracle
皮皮林5517 小时前
订单分库分表后,商家如何高效的查询?
java