【工具】Maven
创始人
2025-05-29 05:12:05

文章目录

  • 0.Maven安装(不使用IDEA内置)
  • 1.Maven的作用
  • 2.Maven核心概念
  • 3.maven目录结构
  • 4.仓库
  • 5.pom文件
    • 5.1 坐标 gav
    • 5.2.packaging
    • 5.3.依赖
    • 5.4.配置属性
    • 5.5.build
  • 6.Maven生命周期
  • 7.junit 单元测试
  • 8.插件
  • 9.IDEA构建Maven
  • 10.创建javase项目
  • 11.web工程
  • 12.依赖的范围
  • 13 Maven常用属性

0.Maven安装(不使用IDEA内置)

(1)3.3.9 适合 jdk1.8
在这里插入图片描述
(2)解压到一个文件夹,路径不含有中文
在这里插入图片描述
(3)配置环境变量

name M2_HOME
value D:\dev\maven\maven3.3.9\apache-maven-3.3.9-bin\apache-maven-3.3.9

在这里插入图片描述

在这里插入图片描述
注意之前要配置JAVA_HOME

(4)安装正确
在这里插入图片描述

(5)默认仓库(本地仓库地址)
在这里插入图片描述

备份settings.xml
在这里插入图片描述

在这里插入图片描述

1.Maven的作用

  • 管理依赖
    jar包的管理,应用,版本
  • 构建项目
    完成项目的编译,测试,打包,部署

2.Maven核心概念

  • POM
    项目对象模式,Maven把一个项目当做一个模型,控制Maven项目构建的过程,管理Jar包。
  • 约定的目录结构
    每一个Maven项目的目录和文件都是有特定位置的。
  • 坐标
    唯一标识符,标识资源。
  • 依赖管理
    管理jar包。
  • 仓库管理
    资源存储的位置。
  • 生命周期
    maven项目构建过程
  • 插件和目标
    执行maven构建时使用的工具是插件
  • 继承
  • 聚合

3.maven目录结构

在这里插入图片描述

4.仓库

本地仓库, 就是你的个人计算机上的文件夹,存放各种jar

远程仓库, 在互联网上的,使用网络才能使用的仓库
①:中央仓库,最权威的, 所有的开发人员都共享使用的一个集中的仓库,
https://repo.maven.apache.org :中央仓库的地址
②:中央仓库的镜像:就是中央仓库的备份, 在各大洲,重要的城市都是镜像。
③:私服,在公司内部,在局域网中使用的, 不是对外使用的。

5.pom文件

5.1 坐标 gav

 公司域名的倒写自定义项目名称自定版本号

https://mvnrepository.com/ 搜索使用的中央仓库, 使用groupId 或者 artifactId作为搜索条件

在这里插入图片描述

开发人员需要使用mysql驱动—>maven首先查本地仓库—>私服—>镜像—>中央仓库

5.2.packaging

打包后压缩文件的扩展名,默认jar,web应用默认war

5.3.依赖


com.mysqlmysql-connector-j8.0.32

5.4.配置属性

properties 设置属性

5.5.build

项目进行构建时,使用的配置信息

6.Maven生命周期

maven构建项目的过程,清理,编译,测试,报告,打包,安装,部署

maven的命令:maven独立使用,通过命令,完成maven的生命周期的执行。maven可以使用命令,完成项目的清理,编译,测试等等

maven的插件: maven命令执行时,真正完成功能的是插件,插件就是一些jar文件, 一些类。

7.junit 单元测试

专门测试程序方法

testAdd叫做测试方法,它的定义规则
1.方法是public的,必须的
2.方法没有返回值, 必须的
3.方法名称是自定义的,推荐是Test + 方法名称
4.在方法的上面加入 @Test

8.插件

在这里插入图片描述

9.IDEA构建Maven

不使用内置的Maven

(1)设置之后新建项目使用配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

10.创建javase项目

(1)新建空工程

在这里插入图片描述
(2)使用骨架创建模块

在这里插入图片描述
在这里插入图片描述

修改配置

在这里插入图片描述

在这里插入图片描述

生命周期 插件 依赖
在这里插入图片描述

11.web工程

(1)maven构建项目
在这里插入图片描述
在这里插入图片描述
手动添加,补充完整
在这里插入图片描述
(2)创建servlet
在com.sdnu.controller下快捷键alt + insert ,搜索servlet
在这里插入图片描述
HelloServlet

package com.sdnu.controller;import javax.servlet.*;
import javax.servlet.http.*;
import java.io.IOException;
import java.io.PrintWriter;public class HelloServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");PrintWriter out = response.getWriter();out.print("Hello Maven Web");out.flush();out.close();}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");PrintWriter out = response.getWriter();out.print("Hello Maven Web");out.flush();out.close();}
}

web.xml

HelloServletcom.sdnu.controller.HelloServletHelloServlet/hello

(3)添加依赖

    javax.servletjavax.servlet-api3.1.0providedjavax.servlet.jspjsp-api2.1provided

index.jsp

Hello World!

访问servlet

(4)部署项目

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
(5)打包

在这里插入图片描述
最终得出一个war包
在这里插入图片描述

12.依赖的范围

在这里插入图片描述

13 Maven常用属性

Maven属性设置

 设置maven的常用属性

Maven全局变量

自定义的属性,1.在 通过自定义标签声明变量(标签名就是变量名)2.在pom.xml文件中的其它位置,使用 ${标签名} 使用变量的值自定义全局变量一般是定义 依赖的版本号, 当你的项目中要使用多个相同的版本号,先使用全局变量定义, 在使用${变量名}

相关内容

热门资讯

第一部分——简单句——第一章—... 谓语动词的物种变化 (二)情态   情态不变动词 can be/must...
网商银行40亿永续债获批!银行... 本文来源:时代周报 作者:黄宇昆时隔5年,浙江网商银行再次获批发债“补血”。近日,浙江金融监管局发布...
甜粽子和咸粽子都没人吃了? 在端午节的传统美食中,甜粽子和咸粽子曾是人们餐桌上的常客。然而,如今却出现了一种令人惊讶的现象,那就...
超4100只个股下跌 超410... 2025.05.30本文字数:424,阅读时长大约1分钟作者 |一财资讯截至午间收盘,沪指跌0.31...
「午盘」A股早盘弱势震荡收跌,... A股三大股指5月30日集体低开。早盘两市探底回升,三大股指跌势明显,个股呈现普跌态势。从盘面上看,可...
English Learnin... English Learning - L2 语音作业打卡 复习对比 [ɔ:] [ɒ] Day22 2...
Java设计模式 02-工厂模... 工厂模式 一、简单(静态)工厂模式 1、看一个具体的需求 看一个披萨的项目:要便于披萨...
嘉应制药信披违规突遭立案,养天... 5月28日晚,广东嘉应制药股份有限公司(以下简称“嘉应制药”)发布公告,公司收到中国证券监督管理委员...
河北保定蠡县县委书记陈伟已跨市... 澎湃新闻记者从相关方面独家获悉,原任河北保定蠡县县委书记的陈伟近日已跨市调任廊坊三河市委书记。 陈...
4月,全国发行新增债券2534... 2025年4月地方政府债券发行和债务余额情况 一、全国地方政府债券发行情况 (一)当月发行情况。 2...
JFX-A型精子质量分析仪空气... JFX-A型精子质量分析仪空气减震器:为精准医疗保驾护航行 在现代医疗技术中,精子质量分析仪是评估男...
“王健林卖万达广场”话题连续4... "先定个小目标"的王健林,如今却像清仓特卖般疯狂甩卖手里近1/5的万达广场,背后暗藏什么玄机? 短...
AI概念股早盘走弱,人工智能相... AI概念股早盘走弱,中科星图跌超8%,芯原股份、寒武纪-U、光环新网跌超3%。 受盘面影响,人工智能...
原创 稀... 近期,据美国《纽约时报》援引匿名知情人士的话报道称,美国商务部已暂停部分允许美国公司向中国商用飞机有...
一线城市豪宅市场火爆:500亿... “日光盘”接连上演,上海楼市持续高温。 5月27日,上海共有7个楼盘集中入市,其中3个项目实现“日光...
信泰人寿合规之殇:国资入局能否... 信泰人寿从民企转为国企,过程布满荆棘。自2007年成立以来,经历了股东内斗、偿付能力危机、高管贪腐、...
傲农生物“脱险”后,何时恢复盈... 得益于2024年财报的向好表现,福建傲农生物科技集团股份有限公司(简称“傲农生物”)近日被撤销退市风...
Java:分布式RPC框架Ap... 目录一、软件架构的演进过程【了解】二、Dubbo概述【了解】1、Dubbo简介2、Dubb架构三、服...
长肥网络与TCP的长肥管道 本文目录1、简化的理解网络模型2、时延带宽积的定义3、长肥网络与TCP长肥管道的定义4、TCP长肥管...
从NLP视角看电视剧《狂飙》,... 文章目录1、背景2、数据获取3、文本分析与可视化3.1 短评数据预处理3.2 词云图可视化3.3 t...
下一个万亿级蓝海市场,数字能源... 随着全球碳中和共识的形成、能源转型的推进,数字能源作为新一代能源技术的重要组成部分,成为各国政府和企...
【CSS】P9 选择器优先级 选择器优先级抛出一个问题选择器优先级权重!important外部样式与内部样式冲突 抛出一个问题 ...
孙悟空为何成了完美男友? 孙悟空成为完美男友,实乃其独特特质所致。他神通广大,能在女友遇到危险时瞬间现身,如那盖世英雄,给予最...
深市同标的规模最大的证券ETF... 5月30日,A股早盘震荡走低,券商板块回调。相关ETF中,证券ETF(159841)截至发稿跌0.7...
中建投信托地产风险化解仍需时日... 中建投信托仍然被“地产旧伤"拖累。文/每日财报 汇水在信托行业深度转型的2024年,年报数据清晰反...
RTP载荷H265(实战细节) H264与H265协议详解RTP载荷H264(实战细节) RTP载荷H2...
【2023.3.8】数据结构复... 【2023.3.8】数据结构复习笔记 文章目录【2023.3.8】数据结构复习笔记序言一、绪论二、线...
赛力斯应邀出席东盟重要经济论坛... 近年来,伴随着中国汽车产业的全面国际化,中国车企的全球影响力日益提升,就在最近赛力斯被应邀出席东盟-...
聚集更有国际化潜力研发管线 君... 5月29日,上海君实生物医药科技股份有限公司(简称“君实生物”)发布关于部分募投项目子项目变更及金额...
面经-2023-哲库Zeku-... 专栏推荐:2023 数字IC设计秋招复盘——数十家公司笔试题、面试实录 专栏首页:2023 数字IC...