全球速读:maven
什么是maven?
Maven是apache旗下的一个开源项目,是一款用于管理和构建java项目的工具。
Apache 软件基金会,成立于1999年7月,是目前世界上最大的最受欢迎的开源软件基金会,也是一个专门为支持开源项目而生的非盈利性组织。
开源项目:https://www.apache.org/index.html#projects-list
【资料图】
Maven的作用?
介绍:
Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建。
作用:
方便的依赖管理
统一的项目结构
标准的项目构建流程
官网:http://maven.apache.org/
仓库:用于存储资源,管理各种jar包。
本地仓库:自己计算机上的一个目录。
中央仓库:由Maven团队维护的全球唯一的。 仓库地址:https://repo1.maven.org/maven2/
远程仓库(私服):一般由公司团队搭建的私有仓库。
安装步骤
先准备安装包
1.解压 apache-maven-3.6.1-bin.zip 。
2.配置本地仓库:修改 conf/settings.xml 中的 <localRepository> 为一个指定目录。
3.配置阿里云私服:修改 conf/settings.xml 中的 <mirrors>标签,为其添加如下子标签:
4.配置环境变量: MAVEN_HOME 为maven的解压目录,并将其bin目录加入PATH环境变量。
5.测试:打开cmd输入mvn -v
IDEA集成Maven
配置Maven环境(全局)
第一步:
第二步:
第三步:
maven home path: 填写自己下载好的maven的位置
user setting file :是用来配置去哪下载依赖的jar包的settings.xml文件
Local repository: 是下载的jar包存放的本地仓库路径
第四步:
第五步:
IDEA 创建 Maven 项目
创建模块,选择Maven
填写模块名称,坐标信息,点击finish,创建完成
编写 HelloWorld,并运行
Maven坐标
什么是坐标?
Maven 中的坐标是资源的唯一标识,通过该坐标可以唯一定位资源位置。
使用坐标来定义项目或引入项目中需要的依赖。
Maven 坐标主要组成
groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.zhe)
artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)
version:定义当前项目版本号
IDEA 导入 Maven 项目
打开IDEA,选择右侧Maven面板,点击 + 号,选中对应项目的pom.xml文件,双击即可。
依赖管理
依赖配置
依赖:指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。
配置:
在 pom.xml 中编写 <dependencies> 标签
在 <dependencies> 标签中 使用 <dependency> 引入坐标
定义坐标的 groupId,artifactId,version
点击刷新按钮,引入最新加入的坐标
注意事项
如果引入的依赖,在本地仓库不存在,将会连接远程仓库/中央仓库,然后下载依赖。(这个过程会比较耗时,耐心等待)
如果不知道依赖的坐标信息,可以到 https://mvnrepository.com 中搜索
依赖传递
依赖具有传递性
直接依赖:在当前项目中通过依赖配置建立的依赖关系
间接依赖:被依赖的资源如果依赖其他资源,当前项目间接依赖其他资源
排除依赖
排除依赖指主动断开依赖的资源,被排除的资源无需指定版本。
依赖范围
依赖的jar包,默认情况下,可以在任何地方使用。可以通过 <scope>…</ scope > 设置其作用范围。
作用范围:
主程序范围有效。(main文件夹范围内)
测试程序范围有效。(test文件夹范围内)
是否参与打包运行。(package指令范围内)
生命周期
Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一。
Maven中有3套相互独立的生命周期:
clean:清理工作。
default:核心工作,如:编译、测试、打包、安装、部署等。
site:生成报告、发布站点等。
每套生命周期包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖于前面的阶段。
生命周期阶段
clean:移除上一次构建生成的文件
compile:编译项目源代码
test:使用合适的单元测试框架运行测试(junit)
package:将编译后的文件打包,如:jar、war等
install:安装项目到本地仓库
注意事项:
在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行。
执行指定生命周期的两种方式:
在idea中,右侧的maven工具栏,选中对应的生命周期,双击执行。
在命令行中,通过命令执行。
mvn clean
mvn compile
mvn package
mvn test
小结
maven生命周期
clean:清理
compile:编译
test:测试
package:打包
install:安装
关键词:
为您推荐
-
什么是maven?Maven是apache旗下的一个开源项目,是一款用于管理和构建java项目的工具。Apache软件基金会,成立于1999年7月,是目前世界上最大
23-03-26
-
近日,网传“海南临高县未成年人欺凌事件”引发公众关注。这位心理老师在社交平台的发帖截图这位老师在处理过程中,首先安慰了遭受欺凌的女生
23-03-26
-
3月25日,华商报-二三里资讯报道了渭南东府景园小区有人私自“窗改门”一事。26日,小区物业负责人回复,已整改到位。近日,有渭南东府景园小
23-03-26
-
怪物猎人崛起修改器为原游戏制作。怪物猎人崛起pc版是当下十分火爆的一款RPG动作冒险类游戏,由知名游戏厂商“卡普空(CAPCOM)”打造,旗下还有
23-03-26
-
2023年,出了灵能百分百3,看B站吹得多,就打算看一下。之前也在知乎刷到过关于灵幻新隆leader师匠的吹嘘之作,本来真的有很高的预期。可能也
23-03-26
-
3月25日,首届羊城青少年人工智能创新实践挑战赛启动会在广州市执信中学琶洲实验学校举行。据了解,为激发广大中小学生对人工智能科技的兴趣和
23-03-25
-
直播吧3月25日讯今日NBA常规赛,独行侠在主场以109-117不敌黄蜂,跌出了附加赛区。独行侠在第三节的落后20分,并且遭到了主场球迷的狂嘘。赛后
23-03-25
-
三言科技3月25日消息,企查查APP显示,近日,ofo关联公司北京拜克洛克科技有限公司及其法定代表人戴威新增一则限制消费令,申请人为北京市海淀
23-03-25
-
简介:当谈到数字媒体世界中的内容时,您当然需要借助DRM(数字版权管理)技术来保护您的创作或内容。让我们简要了解什么DRM以及什么是受DRM保
23-03-25
-
截至2023年3月24日收盘,东贝集团(601956)报收于6 08元,上涨0 5%,换手率2 26%,成交量7 19万手,成交额4337 15万元。
23-03-24
-
导读:正月十五也就是正月时间里的第十五天,节日是我国传统节日元宵节,也是一个月里月最圆的日子。过元宵都会进行各种各样有趣的活动,那么
23-03-24
-
照片中,沈月身穿白色抹胸露肩连体一字裙现身,手拿小包,耳朵上戴着的珠宝首饰非常吸睛,她面对镜头开心露齿灿笑,显得十分自信,站在她身旁
23-03-24
-
厦门港务(SZ000905,收盘价:7 45元)3月24日晚间发布年度业绩报告称,2022年营业收入约219 96亿元,同比减少6 82%;归属于上市公司股东的净利
23-03-24
-
3月24日,金茂服务发布2022年度业绩报告。报告期内,实现收入24 36亿元,同比增60 7%,毛利7 33亿元,同比增56 1%,年内利润3 41亿元,同比增9
23-03-24
-
盟科药业3月24日公告,2022年营收4820 67万元,同比增长5233%,主要系公司自研产品康替唑胺片的销量大幅增长
23-03-24
-
股价突破长期盘整:前30日在上下30%的幅度内整理,今日有效突破。资金流向数据:主力资金净流入179 91万元,占总成交额4%,
23-03-24
-
据日本NHK电视台22日报道,日本山梨县北杜市政府日前推出的“元宇宙”相亲、约会受到欢迎,很多年轻人通过网络相识。由于是通过在“元宇宙”的
23-03-24