Maven仓库

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 一、什么是Maven仓库 Maven仓库就是放置所有JAR文件(WAR,ZIP,POM等等)的地方,所有Maven项目可以从同一个Maven仓库中获取自己所需要的依赖JAR,这节省了磁盘资源。

一、什么是Maven仓库

Maven仓库就是放置所有JAR文件(WAR,ZIP,POM等等)的地方,所有Maven项目可以从同一个Maven仓库中获取自己所需要的依赖JAR,这节省了磁盘资源。此外,由于Maven仓库中所有的JAR都有其自己的坐标,该坐标告诉Maven它的组ID,构件ID,版本,打包方式等等,因此Maven项目可以方便的进行依赖版本管理。你也不在需要提交JAR文件到SCM仓库中,你可以建立一个组织层次的Maven仓库,供所有成员使用。

简言之,Maven仓库能帮助我们管理构件(主要是JAR)摘自网上


本地仓库与远程仓库


Maven 仓库分为本地仓库和远程仓库,寻找构件时,首先从本地仓库找,找不到则到远程仓库找,再找不到就报错;在远程仓库中找到了,就下载到本地仓库再使用。中央仓库是 Maven 核心自带的远程仓库,默认地址:http://repo1.maven.org/maven2。除了中央仓库,还有其它很多公共的远程仓库。私服是架设在本机或局域网中的一种特殊的远程仓库,通过私服可以方便的管理其它所有的外部远程仓库。

二、本地仓库

Maven 本地仓库默认地址为:${user.home}/.m2/repository。

更改本地仓库的位置

找到maven的安装路径下conf下的的settings.xml配置文件



三、中央仓库

安装完 Maven ,本地仓库几乎是空的,这时需要从远程仓库下载所需构件。Maven 配置了一个默认的远程仓库,即中央仓库,找到 %MAVEN_HOME%/lib/maven-model-builder-3.2.1.jar,打开 org/apache/maven/model/pom-4.0.0.xml 超级POM:


在项目中添加其他远程仓库

当中央仓库找不到所需的构件时,我们可以配置 pom.xml ,添加其它的远程仓库。

<repositories>  
    <repository>  
        <id>Sonatype</id>  
        <name>Sonatype Repository</name>  
        <url>http://repository.sonatype.org/content/groups/public/</url>  
        <layout>default</layout>  
        <releases>  
            <enabled>true</enabled>  
        </releases>  
        <snapshots>  
            <enabled>false</enabled>  
        </snapshots>  
    </repository>  
</repositories> 

其中 id 必须唯一,若不唯一,如设置为 central 将覆盖中央仓库的配置。


四、镜像仓库

镜像仓库可以理解为仓库的副本,从仓库中可以找到的构件,从镜像仓库中也可以找到。比如针对中央仓库 http://repo1.maven.org/maven2 ,在中国有它的镜像仓库,这样我们直接访问镜像仓库,更快更稳定。

<mirrors>  
    <mirror>  
        <id>maven.net.cn</id>  
        <name>central mirror in china</name>  
        <url>http://maven.net.cn/content/groups/public</url>  
        <mirrorOf>central</mirrorOf>    <!--表明为central中央仓库配置镜像仓库-->  
    </mirror>  
</mirrors> 

其中,<mirrorOf> 指明了为哪个仓库配置镜像,可以使用通配符如:<mirrorOf>*</mirrorOf>,或者 <mirrorOf>repo1,repo2</mirrorOf> 等进行匹配。一旦配置了镜像,所有针对原仓库的访问将转到镜像仓库的访问,原仓库将不再能直接访问,即使镜像仓库不稳定或停用。在搭建私服的时候,我们通常为所有仓库设置镜像为私服地址,通过私服对所有仓库进行统一管理。

常用的仓库搜索地址:


http://search.maven.org/


http://mvnrepository.com/




相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
2月前
|
敏捷开发 Java 持续交付
阿里云云效产品使用合集之maven仓库是否可以代替自建的Nexus
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理构件(如JARs):本地仓库在首次执行时创建,默认位于`%USER_HOME%/.m2/repository/`;远程仓库包括中央仓库,存放大量开源Java构件,可在线浏览&lt;http://search.maven.org/&gt;。若本地缺失构件,Maven会从远程下载至本地。可通过settings.xml配置本地仓库路径。
|
16天前
|
XML 安全 Java
【Maven】依赖管理,Maven仓库,Maven核心功能
【Maven】依赖管理,Maven仓库,Maven核心功能
328 3
|
2月前
|
敏捷开发 JavaScript Java
阿里云云效产品使用合集之如何进行Maven私有仓库迁移
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
Java Maven
maven开源仓库
maven开源仓库
88 6
|
3月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理构件,包括依赖和插件。有本地、中央和远程三种类型。本地仓库在首次运行时创建,默认在用户目录的`.m2/repository`。Maven首先查找本地仓库,若无则从远程仓库(如中央仓库)下载。中央仓库包含大量开源Java构件,可在线浏览于http://search.maven.org/。
|
4月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理依赖,包括本地、中央和远程仓库。本地仓库在首次运行时创建,默认位于用户目录的`.m2/repository`。若本地缺少构件,Maven会从远程仓库下载,中央仓库是默认的远程源,包含大量开源Java构件。中央仓库无需配置,可通过HTTP访问,[search.maven.org](http://search.maven.org/#browse)可浏览其内容。
|
4月前
|
Java Maven
maven常用仓库
maven常用仓库
164 2
|
4月前
|
存储 Java Maven
win自定义配置本地maven仓库位置,修改maven仓库位置
win自定义配置本地maven仓库位置,修改maven仓库位置
62 0
win自定义配置本地maven仓库位置,修改maven仓库位置
|
4月前
|
缓存 Java Linux
Maven 仓库
Maven仓库管理构件(JAR, WAR等),包括本地(首次执行Maven时创建,默认在用户目录的\.m2\repository)、中央(社区维护,广泛包含开源Java库,可通过http://search.maven.org/搜索)和远程仓库。若本地仓库缺失构件,Maven会从远程下载并缓存。可修改settings.xml改变本地仓库位置。