Maven知识记录(一)初识Maven私服
Maven知识记录(一)初识Maven私服
什么是maven私服
私服即私有的仓库。maven把存放文件的地方叫做仓库,我们可以理解成我门家中的储物间。而maven把存放文件的具体位置叫做坐标。我们项目中pom.xml文件里引入的jar文件就存放在了maven仓库中。
maven的仓库分两种:
- 本地仓库
我们个人电脑中安装maven时分配的仓库。用于存放我们所有项目中所需的资源文件(多为jar文件)。需要说明的是初次安装maven时我们的本地仓库是没有任何文件的,只有我们在对应的项目里运行maven命令时才会在本地仓库生成文件。如果本地仓库没有,会首先尝试从远程仓库下载构件至本地仓库,然后再使用本地仓库的构件。
默认的仓库地址${user.home}/.m2/repository通过手动更改配置文件即可改变本地仓库存放位置。配置文件settings.xml存放在 安装maven路径\conf下(例如:D:\apache-maven-3.0.5\conf\settings.xml) 搜索localRepository即可修改。如下:
<localRepository>D:\apache-maven-3.0.5\repo</localRepository>
- 远程仓库
简单的理解为通过网络访问的仓库被称为maven的远程仓库。综合来讲可分为三类:
- 中央仓库
中央仓库是由 Maven 社区提供的仓库,其中包含了大量常用的库。该仓库由maven官方来维护,本地默认安装的maven无需配置。
官方提供浏览器访问地址:https://search.maven.org/#browse
项目中配置的仓库地址:https://repo1.maven.org/maven2/ - 三方仓库
可以理解为民间组织非官方的仓库。较为常用的当属国内的阿里云仓库。之所以有这些第三方仓库的存在。是为了弥补官方仓库的一些不足。例如:项目所需jar文件在官方仓库找不到、国内访问官方仓库的网络速度过慢等等原因。 - 私有仓库(私服)
前面说了这么多终于绕到了今天的主题---私服。其实我们所说的私服就是远程仓库其中的一种。准确的说是只给自己公司使用的maven仓库。比起上面两种类型的仓库,私服除了可以节省网络带宽以外,更多的是提供公司内部使用的jar包。
例如:公司通过业务积累封装出一套很有价值的基础项目,公司希望这个基础项目只被公司内被使用。这时我们就可以将此基础服务项目打成jar包上传到我们的私有仓库里。其他的项目就可以通过maven引入jar包的方式去使用。因此公司搭建自己的maven私服是很有必要的。
常用远程仓库
- 阿里云Maven仓库:(http://maven.aliyun.com/nexus/content/groups/public/)
- 网易163Maven仓库:(http://mirrors.163.com/maven/repository/maven-public/)
- JBoss的仓库:(http://repository.jboss.org/nexus/content/groups/public)
- Maven的1号仓库:(https://repo1.maven.org/maven2/)
- 谷歌Maven仓库:(https://maven.google.com)
搭建Maven私服的软件有哪些
1. Archiva
官网地址:http://archiva.apache.org/
简介:Apache Archiva是可扩展的存储库管理软件,可帮助您维护自己的个人或企业范围 内的构建工件存储库。它是Maven, Continuum和ANT等构建工具的完美伴侣。Archiva提 供了多种功能,其中包括远程存储库代理,安全访问管理,构建工件存储,交付,浏览,索 引和使用情况报告,可扩展的扫描功能……等等!
2. Artifactory
官网地址:https://www.jfrogchina.com/artifactory
简介:管理制品而不是源代码持续、自动地更新信息已经成为一切成功运维的关键因素.JFrog 通过持续更新的实践彻底改变了软件世界, 其速度和连续性永远改变了组织管理和发布软件的 方式.
3. Nexus
官网地址:https://www.sonatype.com/download-oss-sonatype
简介:正如官网的描述那这样 The world's first and only universal artifact repository that's FREE to use.(世界上第一个也是唯一的免费使用的通用工件存储库。)也正因为如此nexus是目前市面上使用最多的maven私服搭建软件。
因此,这里使用nexus来做搭建私服的演示。上面的官网地址下载软件较慢,我这里提供了网盘下载地址如下:
网盘下载地址:https://pan.baidu.com/s/1saLf5Z0FwWRkjHY6eSzZLg 提取码:qz5z
文章参考:
- https://juejin.im/post/5d66795d51882540b16f3f17#heading-1
- https://www.runoob.com/maven/maven-repositories.html
- https://maven.apache.org/repository/index.html
Maven私服的搭建和使用相关的系列文章共三篇,欢迎阅读
Maven知识记录(一)初识Maven私服
Maven知识记录(二)使用Nexus搭建Maven私服
Maven知识记录(三)项目中使用maven私服
Maven知识记录(一)初识Maven私服的更多相关文章
- Maven(一)初识Maven
前言 在这之前一直都有去看关于Maven的相关介绍,但是没有到真正要用的时候,自己总是以为懂了.其实真的感觉Maven并没有想象的那么简单! 那我们该怎么去学习maven呢?接下来我将从: 初步认识m ...
- maven 使用记录之修改 maven默认jdk版本
maven package执行的时候会遇到jdk版本不对的问题 :原因是 maven所指定的jdk版本与项目使用的jdk版本不一致 1.项目属性的 java compiler可以设置 2.直接修改 m ...
- eclipse Maven 使用记录 ------ 建立 webapp项目
maven 建立 webapp 项目 有2种方式 , 1.在原先app上转换为webapp项目 2.建立maven项目的时候 filter 选择webapp 该选项把webapp文件目录建好,其 ...
- 实测Maven上传jar包到私服的方法归纳
Hello,各位小伙伴大家好,我是小栈君.好久不见,最近因为工作的缘故,导致了更新变慢,但是小栈君也在积极的做素材的规划,毕竟学习知识点的归纳和提炼需要一定的时间. 所以还请大家多多见谅,下一期的分享 ...
- 4.Maven概念模型,maven的生命周期,Maven坐标,依赖管理(依赖范围,依赖声明),仓库管理,私服概念
1 maven概念模型 2 maven的生命周期,项目构建过程 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg== ...
- maven学习记录一——maven介绍及入门
1 Maven的简介 1.1 什么是maven 是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的 1.2 Maven好处 普通的传统项目 M ...
- 日常开发需要掌握的Maven知识
文章来自:https://www.jianshu.com/p/e224a6dc8f20和https://www.jianshu.com/p/20b39ab6a88c Maven出现之前 jar包默认都 ...
- IDEA配置maven+错误记录
使用maven并不是那么顺利所以把自己遇到的问题也记录一下 下载maven 从官网下载maven官网 配置环境变量 新建一个变量名:MAVEN_HOME 值:maven目录 path:%MAVEN_H ...
- Java学习之初识Maven
简介 功能特点 Maven主要作用类似于VS的包管理器,能够帮助开发者完成以下工作:构建.文档生成.报告.依赖.SCMs.发布.分发.邮件列表等. 详细请阅读:https://www.runoob.c ...
随机推荐
- Java入门系列之final
前言 在C#经典面试中掺杂过Java的final关键字,主要用于类不能被继承,在C#则是利用关键字seal修饰类为密封类,而在Java中的final关键字的具体用法包含C#中const.readonl ...
- JVM中栈的frames详解
目录 简介 JVM中的栈 Frame Local Variables本地变量 Operand Stacks Dynamic Linking动态链接 方法执行完毕 简介 我们知道JVM运行时数据区域专门 ...
- MyBatis框架基础详细开发流程
MyBatis 项目已托管到GitHub,大家可以去GitHub查看下载!并搜索关注微信公众号 码出Offer 领取各种学习资料! 一.框架概述 1.1 什么是框架? 软件的半成品,解决了软件开发过程 ...
- 数据可视化之DAX篇(五) 使用PowerBI的这两个函数,灵活计算各种占比
https://zhuanlan.zhihu.com/p/57861350 计算个体占总体的比例是一个很常见的分析方式,它很简单,就是两个数字相除,但是当需要计算的维度.总体的范围发生动态变化时,如何 ...
- Spring cloud系列教程第十篇- Spring cloud整合Eureka总结篇
Spring cloud系列教程第十篇- Spring cloud整合Eureka总结篇 本文主要内容: 1:spring cloud整合Eureka总结 本文是由凯哥(凯哥Java:kagejava ...
- Vue小功能-视频播放之video.js
最近在练手一个小项目,想给首页增加一个视频介绍(如下图).涉及到了vue视频播放的功能,所以在网上了解了一下. 相关的插件是Video.js,官网讲解比较详细,我罗列出来,可以根据自己 ...
- Linux桌面进化史
自 20 世纪 90 年代初期以来,Linux 桌面也已从简单的窗口管理器发展为成熟.完整的桌面.那么它究竟是如何一步步发展至今的呢?作为从 1993 年就开始使用 Linux 的资深用户,FreeD ...
- python学习03-使用动态ua
在写爬虫的时候要使用到浏览器ua 分享一下今天学到的如何使用动态ua的进行爬取 1.简单的爬取网页信息 from urllib.request import urlopen #目标地址 url = & ...
- k8s极简史:K8s多集群技术发展的历史、现状与未来
引子 随着云原生技术的普及,越来越多的企业使用Kubernetes来管理应用,并且集群规模也呈爆发式增长,企业也亟需应对随集群规模增长而带来的各种挑战.同时,为了更好地提供高可用.弹性伸缩的应用,企业 ...
- DJANGO-天天生鲜项目从0到1-009-购物车-Ajax实现添加至购物车功能
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p= ...