仓库类型

  1. nexus安装好之后本身就内置了一些仓库,如下几种仓库类型

image.png

  1. hosted:宿主仓库,这个仓库,是用来让你把你公司内部的发布包部署到这个仓库里来,然后公司内的其他人就可以从这个宿主仓库里下载依赖去使用,宿主仓库还有三种分类 | 宿主仓库 | 作用 | | :—-: | :—-: | | maven-releases | 用于部署公司内部的release版本的发布包(类似于1.0.0,,release的意思就是你的工程已经经过了完善的测试,单元测试,集成测试,QA测试,上生产环境使用了)到这个仓库里面,供其他同事在生产环境依赖和使用 | | maven-snapshots | 用于部署公司内部的snapshot版本的发布包到这个仓库里(如果你的某个工程还在开发过程中,测试还没结束,但是,此时公司里其他同事也在开发一些工程,需要依赖你的包进行开发和测试,联调,此时你的工程的版本就是类似1.0.0-SNAPSHOT这样的版本),供其他同事在开发和测试的时候使用 | | 3rd party | 主要用来部署没法从公共仓库获取的第三方依赖包,比如说,你的公司依赖于第三方支付厂商的一个依赖包,那个依赖包不是开源的,是商业的包。那么你是没有办法从maven中央仓库获取的。此时,我们可能会自己手动从支付厂商那里获取到一个jar包,下载之后上传到私服里来,就放这个仓库里,3rd-party仓库 |
  1. proxy:代理仓库,这个仓库不是用来给你公司内部的发布包部署的,是代理了公司外部的各种仓库的,比如说java.net,codehaus,jboss仓库,最最重要的,就是代理了公司外部的中央仓库,但是这里其实可以修改为nexus连接的应该是国内的阿里云镜像仓库,阿里云去连接中央仓库。其中图中的maven-central就是maven中央仓库的代理仓库


  1. group:仓库组,其实就是将,各种宿主仓库、代理仓库全部组成一个虚拟的仓库组,然后我们的项目只要配置依赖于一个仓库组,相当于就是可以自动连接仓库组对应的各种仓库

    运行流程

  2. 配置好私服后,本地仓库中没有的依赖包都会去私服中下载,私服中没有的就会去maven-central的中央仓库的代理仓库中下载,然后缓存到私服中

image.png

  1. 自己开发还没有完全测试好的Jar包可以放到maven-snapshots仓库中,测试好的jar包可以供生产使用就放到maven-releases中

image.png