note_maven的概念,作用
- maven的概念:
它是一个基于java平台的自动化构建工具(make->ant->maven->gradle)
- maven的作用:
a.管理jar
i.增加第三方jar(commons-fileupload.jar commons-io.jar)
ii.管理jar包之间的一览关系(例如当你告诉了使用
commons-fileupload.jar
,它发现这个包依赖于commons-io.jar
时,它会自动下载依赖关联的所有jar,并且不会冲突)
b.将项目拆分成若干个模块
当一个项目有
UI
,Service
,Dao
层,并且每层代码很多时,maven可以将这三个层拆分为模块,同时可以将多个模块(/项目)合并为一个项目
- maven的具体用处:
- 清理 删除编译的结果,为重新编译做准备
- 编译 java编译class
- 测试 针对于项目中的关键点进行测试,亦可用 项目中的测试代码 去测试开发代码
- 报告 将测试的结果进行显示
- 打包 将项目中包含的多个文件 压缩成一个文件,用于安装或部署(java项目->jar包,web项目->war包)
- 安装 将打成的包,放到本地仓库,供其他项目使用
- 部署 将打成的包,放到服务器上准备运行(将java,ja,jsp等各个文件进行筛选组装,变成一个可以直接运行的项目)
- 自动化工具:
将原材料(java,js,css,html)->产品(可发布项目)
- 本地仓库:
- 在Maven中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件.
- Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方)
- 任何的构件都有唯一的坐标,Maven根据这个坐标定义了构件在仓库中的唯一存储路径,
参考该文章
如果在本地仓库找不到jar包
,那么它会联网去远程仓库
(其中有中央仓库,中央仓库镜像,私服)下载,中央仓库
是由那啥组织维护的(具体忘了)
- 何为依赖:
项目里面A 依赖 B 可以在pom.xml中通过dependency来配置:
<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.0</version><scope>test</scope></dependency>
当然也可以配置多个依赖
依赖的范围,依赖的有效性:
在不同的阶段中,所使用的classpath是不同的,在pom.xml中配置:
compile
(默认)test
provided
compile | test | provided | |
---|---|---|---|
主程序(main) | √ | × | √ |
测试程序(test) | √ | √ | √ |
部署(运行) | √ | × | × |
maven在编译.测试,运行项目时.各自使用一套classpath
note_maven的概念,作用相关推荐
- 【mysql】主键的概念作用及特点
概念 : 主关键字(主键,primary key)是被挑选出来,作表的行的惟一标识的候选关键字.一个表只有一个主关键字.主关键字又可以称为主键.主键可以由一个字段,也可以由多个字段组成,分别成为单字段 ...
- 一、scrapy爬虫框架——概念作用和工作流程 scrapy的入门使用
scrapy的概念和流程 学习目标: 了解 scrapy的概念 了解 scrapy框架的作用 掌握 scrapy框架的运行流程 掌握 scrapy中每个模块的作用 1. scrapy的概念 Scrap ...
- 【理论知识学习32】归纳偏差与选择性偏差(概念作用以及举例说明)
呆呆象呆呆的所有博客目录 一.inductive bias 归纳偏置 1.1 背景与概念介绍 No-Free-Lunch (不存在免费午餐理论)提出没有先验知识进行学习是不可能的.如果我们不对特征空间 ...
- Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释
遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题 a,什么叫序列化和反序列化 b,作用.为啥要实现这个 Serializable 接口,也就是为啥要序列化 c,se ...
- Java 之 Serializable 序列化和反序列化的概念,作用的通俗的解释
1.序列化和反序列化的疑问 遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题 a,什么叫序列化和反序列化 b,作用.为啥要实现这个 Serializable 接口, ...
- Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释【转】
转载自:https://blog.csdn.net/qq_27093465/article/details/78544505 遇到这个 Java Serializable 序列化这个接口,我们可能会有 ...
- 关于前后端分离的概念,作用,优缺点
前端概念 前端是一切直接与用户交互的页面或软件(用户看得见.摸得着)的统称,比如各种网站网页.andorid 手机各种 App.苹果手机各种 app.微信小程序.网络游戏客户端等.所以,普通人使用计算 ...
- Maven是什么? Maven的概念+作用+仓库的介绍+常用命令
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型.一组标准集合,一个依赖管理系统.和用来运行定义在生命周期阶段中插件目标和逻辑. 核心功能 Maven的核心 ...
- 浮动的概念作用特点产生浮动的原因和清除浮动的方法
一.浮动的概念: 什么是浮动(float)? 概念:元素的浮动是指设置了浮动属性的元素会脱离标准普通流的控制移动到指定位置. 浮动float,CSS 提供了 3 种机制来设置盒子的摆放位置,分别是普通 ...
最新文章
- Linux基础三剑客
- Kali Linux渗透测试实战 2.2 操作系统指纹识别
- 关于 scrapy 框架必须掌握的核心知识
- 【Linux】一步一步学Linux——curl命令(193)
- 太阳能计算机屏幕是什么材质,魅蓝E的屏幕怎么样?屏幕材质是什么?
- ASP.NET 页面之间传值的几种方式
- RMAN CATALOG命令手动注册磁带库中的备份片
- linux清除历史命令记录_Linux运维常用维护命令记录,不是长篇理论,干的实用...
- 隐藏或者修改nginx信息
- java 档案管理系统论文_基于JAVA学生档案管理系统论文.doc
- 你可能不知道Flutter到底有多火
- iOS常用宏定义总结 --Objective-C
- CI框架的使用-环境搭建
- undo歌词中文音译_《U-n-d-e-r–STANDING!》中文歌词及音译
- 屏幕录像专家android,屏幕录像专家
- 闺蜜生日c语言代码,祝闺蜜生日快乐的说说大全 2018最新祝朋友生日快乐经典说说...
- 被迫学计算机,IBM超级计算机Watson爆粗口 被迫“洗脑”
- java二面问什么_java面试题,拼多多面试题分享(java二面)
- 抖音中用小程序自动制作人物关系图
- Virual Studio 2022 C++ CLR 中 模拟 Android Studo,Eclipse 的 LogCat
热门文章
- 开始使用 Markdown
- javascript 常用的一些事件和应用
- MAC安装mysql和navicat
- 输入一个数,判断这个数的二进制有几个0,几个1(完整代码)
- 动态规划——最大子段和(洛谷 P1115)
- 广度优先搜索(BFS)——抓住那头牛(POJ 4001)
- linux提示桌面正在处理文件,linux系统下桌面配置文件.desktop的几个小问题
- origin画图_3分钟浏览,Origin绘图中的12个经典问题集锦,早看早知道,躲坑没烦恼!!!...
- window.location.href如何多次请求_何为幂等?如何设计?
- 两分钟搞定阿里SQL面试题:亿级表合并