nexus的介绍及使用(图文教程)泽0…
2016-01-21 10:20
316 查看
个人官方网站 :点击进入
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问
和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。Nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST
APIs,通过m2eclipse与Eclipse集成使用。Nexus支持WebDAV与LDAP安全身 份认证。
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
nexus下载地址为:http://www.sonatype.org/nexus/go
nexus的安装及配置请参考 nexus的下载及安装 图文教程(亲测成功)
目前的最新版本为nexus- 2.11.4-01
我用的就是这个
首先介绍一下
nexus有两种工作方式
第一种:一种是内嵌Jetty的bundle,只要你有JRE就能直接运行。
详情请参考:nexus的下载及安装 图文教程(亲测成功)
第二种:方式是WAR,你只须简单的将其发布到web容器中即可使用。
详情请参考:nexus的下载及安装 图文教程(亲测成功)
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
以下我们会依据以下几步来具体介绍nexus的使用
首先介绍nexus
nexus的简单配置
添加宿主仓库
添加仓库组
如何搜索依赖
如何上传依赖到nexus
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
nexus的仓库类型分为以下四种:
hosted:宿主 本地仓库。
通常我们会部署自己的构件到这一类型的仓库。比如公司/组织开发的项目
group:
仓库组
用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用依赖项时,
无需引用多个仓库了,只需要引用一个类型为group的repository即可。
proxy:代理
它们被用来代理远程的公共仓库,如maven中央仓库或一些第三方公共仓库。
virtual:虚拟
可以看到type中的仓库类型
以下是这几种仓库的具体应用场景:
3rd party: 无法从公共仓库获得的第三方发布版本的构件仓库
Apache Snapshots: 用了代理ApacheMaven仓库快照版本的构件仓库
Central: 用来代理maven中央仓库中发布版本构件的仓库
Central M1 shadow: 用于提供中央仓库中M1格式的发布版本的构件镜像仓库
Codehaus Snapshots: 用来代理CodehausMaven 仓库的快照版本构件的仓库
Releases: 用来部署管理内部的发布版本构件的宿主类型仓库
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
新搭建的neuxs环境只是一个空的仓库,需要手动和远程中心库进行同步,nexus默认是关闭远程索引
下载,最重要的一件事情就是开启远程索引下载。
操作:
点击左边Administration菜单下面的Repositories,找到右边仓库列表中的三个仓库
Apache Snapshots,Codehaus Snapshots和Maven Central,
然后再没有仓库的configuration下把Download Remote
Indexes修改为true。如下图
然后在Apache Snapshots,Codehaus Snapshots和Maven
Central这三个仓库上分别右键,选择Repari
Index,这样Nexus就会去下载远程的索引文件。
这样设置以后,
Nexus会自动从远程中央仓库下载索引文件,
点击以后会看到一个任务在进行 (下载的时间比较长 文件较大
耐心等待)
为了检验索引文件自动下载是否生效,可以却换到Browse
Index(这样做的目的是为了我们可以通过索引搜索到我们需要的依赖)
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
新 建公司的内部仓库,步骤为Repositories –> Add –> Hosted
Repository,在页面的下半部分输入框
中填入Repository ID和Repository
Name即可,比如分别填入zfy 和 zfy
repostiory,另外把
Deployment
Policy设置为Allow Redeploy,点击save就创建完成了。
这里我点击添加宿主类型的仓库,在仓库列表的下方会出现新增仓库的配置,如下所示:
点击save按钮后就会在仓库列表中看到刚才新增的仓库。(添加代理和仓库组的操作与上面类似,自己动手操作)
以下是代理仓库
点击菜单栏上的Add按钮后选择Proxy
Repository,看到如下所示配置界面:
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
Nexus
中仓库组的概念是Maven没有的,在Maven看来,不管你是hosted也好,proxy也好,或者group也好,对我都是一样的,我只管根据
groupId,artifactId,version等信息向你要构件。为了方便Maven的配置,Nexus能够将多个仓库,hosted或者
proxy合并成一个group,这样,Maven只需要依赖于一个group,便能使用所有该group包含的仓库的内容。
neuxs- 1.9.2.3中默认自带了一个名为“Public
Repositories”组,点击该组可以对他保护的仓库进行调整,把刚才建立的公司内部仓库zfy
repostiory加入其中,这样就不需要再在maven中明确指定内部仓库 的地址了。同时创建一个Group
ID为public-snapshots、Group Name为Public Snapshots
Repositories的组,把Apache Snapshots、Codehaus Snapshots、Snapshots和zfy
repostiory加入其中。
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
在开发过程中过程中,我们往往只记得某个构件的大致名字,这时我们可以通过nexus提供的构件搜索功能查询该构件的完整配置信息(groupId,artifactId,version)
由于刚才我们已经把索引下载了下来
那么现在我们就可以根据索引来搜索我们所需要的依赖l
(具体操作看下图)在关键字搜索的框中输入要搜索的内容 例如
hibernate
--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------
如果通过nexus搜不到某个的构件,那说明这个构件不在当前nexus所登记的仓库中,
可能需要添加额外的代理仓库或手工上传某个构件。
好了 nexus 基本安装配置完成
有问题发我邮箱 1360461332@qq.com
我的更多文章:
nexus的下载及安装 图文教程(亲测成功)
(2015-11-07 10:34:59)
windows环境下maven私服搭建(借助nexus仓库管理器) 亲测成功 泽0715
(2015-11-06 13:39:10)
--------------------------------------------------------------------------------------------------------------------------------
前言
Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问
和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。Nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST
APIs,通过m2eclipse与Eclipse集成使用。Nexus支持WebDAV与LDAP安全身 份认证。
--------------------------------------------------------------------------------------------------------------------------------
nexus的下载和安装
---------------------------------------------------------------------------------------------------------------------------------nexus下载地址为:http://www.sonatype.org/nexus/go
nexus的安装及配置请参考 nexus的下载及安装 图文教程(亲测成功)
目前的最新版本为nexus- 2.11.4-01
我用的就是这个
首先介绍一下
nexus有两种工作方式
第一种:一种是内嵌Jetty的bundle,只要你有JRE就能直接运行。
详情请参考:nexus的下载及安装 图文教程(亲测成功)
第二种:方式是WAR,你只须简单的将其发布到web容器中即可使用。
详情请参考:nexus的下载及安装 图文教程(亲测成功)
--------------------------------------------------------------------------------------------------------------------------------
nexus的介绍及使用
---------------------------------------------------------------------------------------------------------------------------------
以下我们会依据以下几步来具体介绍nexus的使用
首先介绍nexus
nexus的简单配置
添加宿主仓库
添加仓库组
如何搜索依赖
如何上传依赖到nexus
--------------------------------------------------------------------------------------------------------------------------------
1: 首先介绍nexus
---------------------------------------------------------------------------------------------------------------------------------
nexus的仓库类型分为以下四种:
hosted:宿主 本地仓库。
通常我们会部署自己的构件到这一类型的仓库。比如公司/组织开发的项目
group:
仓库组
用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用依赖项时,
无需引用多个仓库了,只需要引用一个类型为group的repository即可。
proxy:代理
它们被用来代理远程的公共仓库,如maven中央仓库或一些第三方公共仓库。
virtual:虚拟
可以看到type中的仓库类型
以下是这几种仓库的具体应用场景:
3rd party: 无法从公共仓库获得的第三方发布版本的构件仓库
Apache Snapshots: 用了代理ApacheMaven仓库快照版本的构件仓库
Central: 用来代理maven中央仓库中发布版本构件的仓库
Central M1 shadow: 用于提供中央仓库中M1格式的发布版本的构件镜像仓库
Codehaus Snapshots: 用来代理CodehausMaven 仓库的快照版本构件的仓库
Releases: 用来部署管理内部的发布版本构件的宿主类型仓库
--------------------------------------------------------------------------------------------------------------------------------
2:nexus的简单配置
---------------------------------------------------------------------------------------------------------------------------------
开启远程索引
新搭建的neuxs环境只是一个空的仓库,需要手动和远程中心库进行同步,nexus默认是关闭远程索引下载,最重要的一件事情就是开启远程索引下载。
操作:
点击左边Administration菜单下面的Repositories,找到右边仓库列表中的三个仓库
Apache Snapshots,Codehaus Snapshots和Maven Central,
然后再没有仓库的configuration下把Download Remote
Indexes修改为true。如下图
然后在Apache Snapshots,Codehaus Snapshots和Maven
Central这三个仓库上分别右键,选择Repari
Index,这样Nexus就会去下载远程的索引文件。
这样设置以后,
Nexus会自动从远程中央仓库下载索引文件,
点击以后会看到一个任务在进行 (下载的时间比较长 文件较大
耐心等待)
为了检验索引文件自动下载是否生效,可以却换到Browse
Index(这样做的目的是为了我们可以通过索引搜索到我们需要的依赖)
--------------------------------------------------------------------------------------------------------------------------------
3:添加宿主仓库
---------------------------------------------------------------------------------------------------------------------------------
新 建公司的内部仓库,步骤为Repositories –> Add –> Hosted
Repository,在页面的下半部分输入框
中填入Repository ID和Repository
Name即可,比如分别填入zfy 和 zfy
repostiory,另外把
Deployment
Policy设置为Allow Redeploy,点击save就创建完成了。
这里我点击添加宿主类型的仓库,在仓库列表的下方会出现新增仓库的配置,如下所示:
点击save按钮后就会在仓库列表中看到刚才新增的仓库。(添加代理和仓库组的操作与上面类似,自己动手操作)
以下是代理仓库
点击菜单栏上的Add按钮后选择Proxy
Repository,看到如下所示配置界面:
--------------------------------------------------------------------------------------------------------------------------------
4:添加仓库组
---------------------------------------------------------------------------------------------------------------------------------
Nexus
中仓库组的概念是Maven没有的,在Maven看来,不管你是hosted也好,proxy也好,或者group也好,对我都是一样的,我只管根据
groupId,artifactId,version等信息向你要构件。为了方便Maven的配置,Nexus能够将多个仓库,hosted或者
proxy合并成一个group,这样,Maven只需要依赖于一个group,便能使用所有该group包含的仓库的内容。
neuxs- 1.9.2.3中默认自带了一个名为“Public
Repositories”组,点击该组可以对他保护的仓库进行调整,把刚才建立的公司内部仓库zfy
repostiory加入其中,这样就不需要再在maven中明确指定内部仓库 的地址了。同时创建一个Group
ID为public-snapshots、Group Name为Public Snapshots
Repositories的组,把Apache Snapshots、Codehaus Snapshots、Snapshots和zfy
repostiory加入其中。
--------------------------------------------------------------------------------------------------------------------------------
5:如何搜索
---------------------------------------------------------------------------------------------------------------------------------
在开发过程中过程中,我们往往只记得某个构件的大致名字,这时我们可以通过nexus提供的构件搜索功能查询该构件的完整配置信息(groupId,artifactId,version)
由于刚才我们已经把索引下载了下来
那么现在我们就可以根据索引来搜索我们所需要的依赖l
(具体操作看下图)在关键字搜索的框中输入要搜索的内容 例如
hibernate
--------------------------------------------------------------------------------------------------------------------------------
6:如何上传依赖到nexus
---------------------------------------------------------------------------------------------------------------------------------
如果通过nexus搜不到某个的构件,那说明这个构件不在当前nexus所登记的仓库中,
可能需要添加额外的代理仓库或手工上传某个构件。
好了 nexus 基本安装配置完成
有问题发我邮箱 1360461332@qq.com
我的更多文章:
nexus的下载及安装 图文教程(亲测成功)
(2015-11-07 10:34:59)
windows环境下maven私服搭建(借助nexus仓库管理器) 亲测成功 泽0715
(2015-11-06 13:39:10)
相关文章推荐
- 持续集成相关
- 浅谈HTTP中Get与Post的区别(泽071…
- spring MVC整合redis实例(简…
- windows环境下maven私服搭建(借助…
- HDU-5510-Bazinga【2015沈阳赛区】【KMP】
- rsync+Inotify实现数据的实时同步更新
- Linux系统下对JDK版本升级
- 构建基于Nginx的web服务器
- 【POJ 1716】Integer Intervals(差分约束系统)
- C++中 auto自己主动变量,命名空间,using作用以及作用域
- 第七天 运维技术
- git tag知多少
- myeclipse常用快捷键(泽0715)新…
- Linux 下安装nginx 详解(新手)
- android基础学习007_android 应用启动界面SplashActivity
- java满天星系列之(二)JFrame实现满天星效果 泽0715
- Java和c++泛型理解
- 导出某个view
- PID
- Oracle自增ID实现