• 第7章 仓库


    第7章 仓库

    本章介绍了maven的仓库概念,仓库分类等内容。

    7.1 何为maven仓库

    maven仓库就是放置所有jar文件(war,zip,pom等等)的地方,maven项目可以从maven仓库中获取自己所需要的依赖jar。此外,仓库中的构件都有自己的坐标,坐标描述了版本、打包方式和maven如何找到此构件。

    7.2 仓库的分类

    7.2.1 本地仓库

    在第一章安装maven时,我们已经设置了maven本地仓库,那么现在,详细说一说为什么要设置本地仓库。
    在maven项目中,是没有lib目录来存放依赖文件的,如果pom.xml中需要依赖,在编译或测试时,maven会自动基于坐标使用本地仓库的依赖文件。
    默认情况,maven本地仓库位置在用户根目录的.m2文件夹中。
    某些情况下,例如c盘不足,我们需要设置仓库位置。

    7.2.1.1 Linux设置方法

    找到已注释掉的
    <localRepository>/path/to/local/repo</localRepository>,解开注释;
    修改内容为:
    <localRepository>/usr/local/maven/repo</localRepository>
    当然,路径你可以自己定义。

    Alt text

    7.2.1.2 Window设置方法

    找到已注释掉的
    <localRepository>/path/to/local/repo</localRepository>

    解开注释,修改内容为:

    <localRepository> D:/repository </localRepository>

    当然,路径你可以自己定义。

    Alt text


    一个maven构件,只有在本地仓库中时,才能供其他maven项目使用。maven一般会自动从中央仓库下载至本地仓库中。
    自建的项目需要安装至本地仓库,才能供其他maven项目调用。
    安装至本地仓库命令:mvn clean install

    7.2.2 远程仓库

    远程仓库可以看做和中央仓库相似,他的构件基本上都是从中央仓库克隆来的,还有些是自己发布的构件。那为什么要远程仓库?有时,国内的网络访问中央仓库很慢,这时可以修改maven配置来访问速度更快的远程仓库来下载构件。

    7.2.2.1 远程仓库配置

    在pom.xml文件中,标签管理远程仓库。

    常见的远程仓库地址:
    开源中国:http://maven.oschina.net/content/groups/public/

    配置pom链接远程仓库:

    <!-- 远程仓库配置 -->
        <repositories>
            <repository>
                <id>oschina</id>
                <name>oschina repo</name>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
                <url>http://maven.oschina.net/content/groups/public/</url>
            </repository>
        </repositories>
    标签介绍
    id 标识仓库的唯一值,central会覆盖中央仓库
    name 仓库名称
    releases true表示开启仓库发布版本下载,false表示禁止
    snapshots false表示禁止快照版本下载,true表示支持
    url 仓库地址,基于http协议
    updatePolicy 远程仓库的检查频率:never-从不检查,always-每次构建都检查,interval:x-每x分钟检查,daily-每天检查
    checksumPolicy 检查检验和文件的策略:ignore-不检查,warn-校验错误警告,fail-校验错误构建失败

    7.2.3 中央仓库

    当maven刚安装至系统中时,本地仓库是空的,maven至少需要一个可用的远程仓库来下载构件,才能执行maven命令。中央仓库就是这样一个远程仓库。
    maven默认的远程仓库地址是:http://repo1.maven.org/maven2/

    7.2.4 私服

    私服是一种特殊的远程仓库,他架设在局域网内或公司内网,负责代理公网上的远程仓库。
    maven构建项目时,本地仓库没有所需构件,先请求私服,如果私服上不存在,则从外部的远程仓库下载构件缓存至私服上,供用户使用。
    私服的好处:

    • 加速maven构件下载,私服一般会搭建在公司内部局域网中,这样maven的构件下载速度可以比公网下载快很多。
    • 部署第三方构件,当有些构件不能从远程仓库下载,或者某些自己内部开发出的构件,都可以部署至私服上,供用户使用。
    • 降低中央仓库负荷,使用私服可以避免对中央仓库的重复下载。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    Delphi DbgridEh实现鼠标拖动选中列,并使复选框选中
    什么是运行期包与设计期包
    组件事件大全
    sql: 查找约束
    delphi Ctrl+鼠标左键或者Find Declaration不能定位到源文件
    delphi7 编译的程序在win7下请求获得管理员权限的方法
    DELPHI中build和compile有什么区别?
    线程安全的单件模式(单例模式)
    [Selenium]通过Selenium实现在当前浏览器窗口点击一个图标之后,弹出另外一个窗口,关闭这个窗口,再回到原来的窗口进行操作
    两种读写配置文件的方案(app.config与web.config通用)
  • 原文地址:https://www.cnblogs.com/jdbc/p/4975488.html
Copyright © 2020-2023  润新知