Web后端快速入门(Maven)

Maven是apche旗下的一个开源项目,是一款用于管理和构建java项目的工具。

开源项目:Welcome to The Apache Software Foundation.

Maven的作用:

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

在pom中描述信息,Maven就会自动联网下载

统一项目结构(提供标准、统一的项目结构)

生成的目录结构都是统一,可以直接导入进其他开发工具中

项目构建(标准跨平台的自动化项目构建方式)

双击自动进行打包编译

概述:

介绍:

Apche Maven 是一款用于管理和构建java项目的工具,它基于项目对象模型(POM)的概念,通过一小段信息来管理项目的构建。

通过插件完成项目的标准化构建

仓库:用于存储资源,管理各种jar包。

(导入依赖时一般先从本地仓库加载,如果没有再连接中央仓库下载)

本地仓库:自己计算机上的一个目录。

中央仓库:由Maven团队维护的全球唯一的。仓库地址:Central Repository:

远程仓库(私服):一般由公司团队搭建的私有仓库

安装:

安装步骤:

1.解压 apach-maven-3.6.1-bin.zip。(官网中搜索下载)

解压后文件:

bin:存放可执行文件 conf:配置文件目录 lib:所依赖的jar包资源存放的目录

2.配置本地仓库:修改conf/settings.xml中的<localRepository>为一个指定目录。

在conf的settings.xml文件中加入以下标签即可

<localRepository>您的路径</localRepository>

(主要用于存储下载到本地的资源)

3.配置阿里云私服:修改 conf/settings.xml中的<mirrors>标签,为其添加如下子标签:

XML 复制代码
 <mirror>
       <id>alimaven</id>
        <name>aliyun maven </name>
         <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
         <mirrorOf>central</mirrorOf>
      </mirror>

4.配置环境变量:MAVEN_HOME为maven的解压目录,并将其bin目录加入PATH环境变量。

验证是否配置成功,在控制台中输入mvn -v,输出版本号则配置成功

IDEA集成Maven:

配置Maven环境:

方式一:
方式二:

在该界面中配置

创建Maven项目:

点击模块,选择jdk版本为11即可

导入Maven项目:

依赖管理:

依赖配置:

依赖:指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。

配置:

1.在pox.xml中编写<dependencies>标签

2.在<dependencies>标签中 使用<dependency>引入坐标

3.定义坐标的 groupld,artifactld,version

4.点击刷新按钮,引入最新加入的坐标

依赖查询网站:Maven Repository: Search/Browse/Explore

依赖传递:

依赖具有传递性

第一层依赖为直接依赖

上图的A项目也依赖C

右键点击图表再点击查看图表,可查看依赖

如果A依赖了B,而B依赖了C,我们不需要依赖C可以使用排除依赖

排除依赖:

排除依赖指主动断开依赖资源,被排除的资源无需指定版面。

使用标签<exclusions>

依赖范围:

依赖的jar包,默认情况下,可以在任何地方使用。可以通过<scope>...</scope>设置其作用范围

作用范围:

主程序范围有效。(main文件夹范围内)

测试程序范围有效。(test文件夹范围内)

是否参与打包运行。(package指令范围内)

生命周期:

Maven的生命周期就是为了对所有的maven项目构建进行抽象和统一

在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行。

执行指定生命周期的两种方式:

在idea中,右侧的maven工具栏,选中对应的生命周期,双击执行。

在命令行中,通过命令执行。

maven的执行都是通过插件实现的

相关推荐
float_六七1 小时前
IntelliJ IDEA双击Ctrl的妙用
java·ide·intellij-idea
能摆一天是一天3 小时前
JAVA stream().flatMap()
java·windows
颜如玉3 小时前
🤲🏻🤲🏻🤲🏻临时重定向一定要能重定向🤲🏻🤲🏻🤲🏻
java·http·源码
程序员的世界你不懂5 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
星空寻流年5 小时前
设计模式第一章(建造者模式)
java·设计模式·建造者模式
gb42152875 小时前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
曾经的三心草6 小时前
Python2-工具安装使用-anaconda-jupyter-PyCharm-Matplotlib
android·java·服务器
Metaphor6926 小时前
Java 高效处理 Word 文档:查找并替换文本的全面指南
java·经验分享·word
ChinaRainbowSea6 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
stormsha6 小时前
飞算JavaAI炫技赛电商系统商品管理模块的架构设计与实现
java·架构·鸿蒙系统