java技术---maven的概念(01)

1.Maven是什么
Maven是一个Apache公司的开源项目,是项目构建工具。用来管理依赖
2.Maven的好处
(1)使用maven可以在项目中不用导入项目依赖的jar包,省去了下载和导入jar包的过程,使项目的大小等到了缩减
(2)在maven项目中需要使用jar包时,只需要在pox.xml配置文件中配置需要的jar包坐标信息,maven就会自动去仓库找
3.Maven如何在仓库中查找jar包
(1)Maven在仓库中查找jar包需要使用到jar的“坐标”信息
(2)坐标信息由“公司名称+项目名称+版本信息”三部分构成
4.maven中有一个很重要的概念-----仓库
(1)在 Maven 的术语中,仓库是一个位置(place)
(2)Maven用来存储依赖和插件的一个统一的地方,称之为仓库,。
(3)Maven 仓库能帮助我们管理构件(主要是JAR),它就是放置所有JAR文件(WAR,ZIP,POM等等)的地方

  在 Maven 中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件。

(4)Maven仓库又分为本地仓库和远程仓库。远程仓库又分为私服和中央仓库,其他公共库等。
在这里插入图片描述
<1>本地仓库(local):

 1.就是maven在本地(我们的计算机上)存储构件(依赖的Jar包等)的仓库,默认是在用户的.m2/repository/目录下
    (1)刚开始在.m2/下边是没有这个repository/文件夹的
    (2)在命令行中运行mvn命令后才会出现该文件夹,并且在该文件夹下存储我们从远程仓库下载的构件
    (3)默认情况下,不管Linux还是 Windows,每个用户在自己的用户目录下都有一个路径名为 .m2/respository/ 的仓库目录     
 2.运行 Maven 的时候,Maven 所需要的任何构件都是直接从本地仓库获取的。如果本地仓库没有,它会首先尝试从远程仓库下载构件至
   本地仓库,然后再使用本地仓库的构件

<2>远程仓库(remote)

1.远程仓库又分为中央仓库,私服以及其它公共库
2.Maven用户是在和私服打交道,包括上传和下载构件
3.当私服满足不了我们的下载构件需求时,私服会和中央仓库或者其余公共仓库交互
4.将用户需要的构件缓存在私服仓库中

<3> 私服仓库

1. 私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用
2. 将项目所需要的jar包存放在此仓库中,这样整个项目组就都可以使用此仓库提供的jar包,不再需要在自己本地创建仓库来保存jar包

<4>中央仓库(central):

 1.Maven 中央仓库是由 Maven 社区提供的仓库,其中包含了大量常用的库,其地址为:http://repo.maven.apache.org/maven2    
 2.中央仓库包含了绝大多数流行的开源Java构件,以及源码、作者信息、SCM、信息、许可证信息等
 3.一般来说,简单的Java项目依赖的构件都可以在这里下载到。
 4.这个仓库由 Maven 社区管理,不需要配置,.需要通过网络才能访问
 5.浏览中央仓库的内容,maven 提供了一个 URL:http://search.maven.org/#browse。使用这个仓库,可以搜索所有可以获取的代码库

5.Maven 依赖搜索顺序

(1)在本地仓库中搜索,如果找不到,在中央仓库中搜索,如果找到了则执行其他操作
(2)在中央仓库中搜索,如果找不到,并且有一个或多个远程仓库已经设置,则执行步骤 4,如果找到了则下载到本地仓库中以备将来引用。
(3)如果远程仓库没有被设置,Maven 将简单的停滞处理并抛出错误(无法找到依赖的文件)
(4)在一个或多个远程仓库中搜索依赖的文件,如果找到则下载到本地仓库以备将来引用,否则 Maven 将停止处理并抛出错误

6.Maven的两大核心:
(1) 依赖管理:对项目需要使用到的jar包进行管理
(2) 项目构建:项目在编码完成后,对项目进行编译、测试、打包、部署
在这里插入图片描述
7.创建的项目结构如下所示:
在这里插入图片描述
(1)为什么 maven 工程的目录结构要这样呢?

  <1>Maven 要负责项目的自动化构建,以编译为例,Maven 要想自动进行编译,那么它必须知道 Java 的源文件保存在哪里,这样约定之后,
     不用我们手动指定位置,Maven 能知道位置,从而帮我们完成自动编译
  <2>遵循 约定>>>配置>>>编码。即能进行配置的不要去编码指定,能事先约定规则的不要去进行配置。这样既减轻了劳动力,也能防止出错

(2)pom.xml 文件

Project Object Model 项目对象模型,Maven 的核心配置文件,pom.xml,与构建过程相关的一切设置都在这个文件中进行配置     
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值