其他分享
首页 > 其他分享> > Nexus是什么

Nexus是什么

作者:互联网

目录

一.简介

nexus是一个强大的maven仓库管理器,作用是代理远程仓库及部署第三方构件,它极大的简化了本地内部仓库的维护和外部仓库的访问。nexus是一套开箱即用的系统不需要数据库,它使用文件系统加Lucene来组织数据

Nexus 专业版是需要付费的,其开源版为 Nexus OSS。Nexus 提供两种安装包,一种是包含 Jetty 容器的 bundle 包,另一种是不包含容器的 war 包。

下载地址:http://www.sonatype.org/nexus/go。

nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过IDEA和Eclipse集成使用,支持webDAV与LDAP安全身份认证,提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,占用较少的内存,基于简单文件系统而非数据库

二.好处

  1. 加速构建
  2. 节省带宽
  3. 节省中央maven仓库的带宽
  4. 稳定(应付一旦中央服务器出问题的情况)
  5. 控制和审计
  6. 能够部署第三方构件
  7. 可以建立本地内部仓库和公共仓库
  8. 开箱即用,不需要数据库
  9. 占用较少的内存,基于简单文件系统而非数据库

这些优点使得Nexus日趋成为最流行的Maven仓库管理器。

三.仓库

仓库分类

hosted 宿主仓库:主要用于部署无法从公共仓库获取的构件(如 oracle 的 JDBC 驱动)以及自己或第三方的项目构件
proxy 代理仓库:代理公共的远程仓库
virtual 虚拟仓库:用于适配 Maven 1
group 仓库组:Nexus 通过仓库组的概念统一管理多个仓库,这样我们在项目中直接请求仓库组即可请求到仓库组管理的多个仓库

1)Maven可直接从宿主仓库下载构件,也可以从代理仓库下载构件,而代理仓库间接的从远程仓库下载并缓存构件
2)为了方便,Maven可以从仓库组下载构件,而仓库组并没有时间的内容(下图中用虚线表示,它会转向包含的宿主仓库或者代理仓库获得实际构件的内容)

所有仓库在本地都会有一个文件夹存放各自缓存的jar!

Nexus默认内置的仓库

Nexus 可能内置了如下仓库(不同版本可能不同):

各类仓库配置详解

** Hosted仓库**
创建 Nexus 宿主仓库时,仓库会默认地存放在 sonatype-work/nexus/storage/[repository-id]/ 下,也可以填写 Override Local Storage Location 自定义仓库的存储路径。同时可以设置以下选项:

Proxy仓库
创建 Nexus 代理仓库时,除了设置远程仓库的地址和认证信息外,还可以设置以下选项:

Public仓库
仓库策略分为 release 与 snapshot,一般用在 proxy仓库 和 hosted仓库,分别表示发布版和快照版。而仓库组没有 Release 和 Snapshot 的区别,创建时会让用户选择由哪些宿主仓库或代理仓库构成。仓库组所包含的仓库的顺序决定了仓库组遍历它们的次序,所以最好将常用的仓库放在前面。

四.Nexus的索引

Nexus 通过维护仓库的索引来提供搜索功能。

远程索引:这里只针对代理仓库,其他仓库不存在远程索引一说。配置好远程仓库后,搜索时仍然是不能搜到远程仓库的任意文件的。为了能搜索到远程仓库的所有文件,我们需要开启 Nexus 中的代理仓库下载远程索引(默认这个设置是关闭的)。
只要远程仓库提供 nexus-indexer 形式的索引, Nexus 就可以下载它的索引。这样在你搜索时,无论私服本地是否存在相应文件,都能被搜索到,然后项目引用时,nexus会去远程仓库下载,并缓存在本地。

Hosted仓库: Nexus 也可以对宿主仓库和代理仓库进行索引。仓库有了索引之后,可以在其 Browse Index 选项卡中浏览仓库内容的树形结构。

五.目录结构

配置文件:nexus/conf/nexus.properties
仓库目录:nexus/sonatype-work

根目录

nexus-3.5.2-01 目录

sonatype-work\nexus3 目录

具体每个目录下的各个配置文件的作用,还可参考官方文档说明:https://help.sonatype.com/display/NXRM3/Installation

六.版本比较

目前Nexus已升级到3.x,简单做下浅显比较:

标签:nexus,Nexus,什么,Maven,仓库,构件,远程
来源: https://www.cnblogs.com/rxysg/p/15691881.html