Maven的仓库和settings.xml配置文件

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/qq_25827845/article/details/83549846

(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/78988909冷血之心的博客)

快速导航:

Maven基础概念和安装配置教程

        在Maven基础概念和安装配置一文中,我们简单学习了Maven是什么,安装包里边的各个文件夹都存放着哪些东西,并且进行了简单的安装配置。在本文中,我们将进一步学习了解何为Maven仓库以及Maven的配置文件settings.xml如何配置。

Maven的仓库

       Maven用来存储依赖和插件的一个统一的地方,称之为仓库,Maven仓库又分为本地仓库和远程仓库。远程仓库又分为私服和中央仓库等。

 我们以一幅图来表示它们的关系:

本地仓库

       就是maven在本地(我们的计算机上)存储构件(依赖的Jar包等)的仓库,默认是在用户的.m2/repository/目录下。需要注意的是刚开始在.m2/下边是没有这个repository/文件夹的,当我们在命令行中运行mvn命令后才会出现该文件夹,并且在该文件夹下存储我们从远程仓库下载的构件。

既然Maven默认在/.m2/repository/下存储依赖和构件,那么我们是不是可以改变自定义这个位置?

答案是肯定的,注意看图中的/.m2/settings.xml 该文件是maven的配置文件,我们可以在该文件中通过标签<localRepository></localRepository>来配置本地仓库的位置。(settings.xml文件是啥?其作用是啥?我们需要如何配置将在下边详细讲解)

远程仓库

      远程仓库又分为中央仓库私服以及其它公共库,我们也借用一幅图来阐述它们之间的关系。

由图中可以看出,我们Maven用户是在和私服打交道,包括上传和下载构件,当私服满足不了我们的下载构件需求时,私服会和中央仓库或者其余公共仓库交互,将用户需要的构件缓存在私服仓库中。那么何为私服?

私服

       私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用。

局域网使用搭建maven私服的好处

1.节省外网带宽:减少重复请求造成的外网带宽消耗,将大部分构件缓存在私服,用户和私服的交互走局域网。

2.加速Maven构件:如果项目配置了很多外部远程仓库的时候,构建速度就会大大降低,因为外网下载速度很慢。

3.部署第三方构件:有些构件无法从外部仓库获得的时候,可以把这些构件部署到内部仓库(私服)中,供内部maven项目使用。

4.提高稳定性:避免当外网不稳定的时候,maven构建也变的不稳定的情况。

5.增强控制:在公司内部可以访问私服可以通过配置用户名和密码来增强权限控制。

5.降低中央仓库的负荷:maven中央仓库被请求的数量是巨大的,配置私服也可以大大降低中央仓库的压力

待续。。。

猜你喜欢

转载自blog.csdn.net/qq_25827845/article/details/83549846