(十二)maven之nexus仓库的基本用法
nexus仓库的基本用法
① 启动nexus。
上一章有提到:https://www.cnblogs.com/NYfor2018/p/9079068.html
② 访问http://localhost:8081/ 点击右上角的sign in登录,默认用户名是:admin 密码:admin123。

登录之后可以点击右上角的admin,修改默认密码。

仓库类型
① 点击最上排的齿轮按钮,然后点击左边的Repository—Repositories菜单,可以看到当前仓库列表。

format列:maven2是Java仓库;nuget是.net仓库。
type列:
1、proxy是代理仓库,如果自己私有库没有对应的资源(jar等),就会到这里去找。
2、hosted是宿主仓库,是自己的私有库地址。这仓库有release和snapshots两种类型,如果自己在创建依赖jar包的时候,就需要指定,是正式发布(release),还是发布开发版(snapshots)。
3、group管理组,组是Nexus一个强大的特性,它允许你在一个单独的URL中组合多个仓库,比如默认组合:maven-central、maven-release和maven-snapshots。
proxy:代理仓库
局域网内用户首先从代理仓库下载jar包,如果代理仓库没有就从远程仓库下载到代理仓库中。
① 点击列表中的maven-central代理仓库,会出现设置页面。如下将默认远程仓库修改为阿里云镜像:http://maven.aliyun.com/nexus/content/groups/public/,点击最下面的SAVE按钮保存。

② 返回到列表页面,点击maven-central右边的copy按钮,复制仓库地址:

③ 在项目pom.xml文件中设置代理仓库,如下url就是刚才复制的地址,另外再设置一个spring-core-5.0.6.RELEASE的依赖包。
<repositories>
<repository>
<id>central</id>
<name>central</name>
<url>http://localhost:8081/repository/maven-central/ </url>
</repository>
</repositories>
④ 如果在此之前在settings.xml中设置了镜像仓库,需要将其注释掉,代理仓库才会生效。如果在此之前下载了spring-core,在本地仓库删除其jar包,现在从代理仓库重新下载。在eclipse中右键点击项目—maven—update project。

把画面切换到Nexus页面,点击最上排的方块图标,选择下面的browse—components菜单,点击maven-central仓库,如图:

可以看到,spring-core-5.0.6.RELEASE已经成功下载到代理仓库之中,局域网内其他人可以直接从这里下载依赖jar包,而不需要连接外网。
hosted:宿主仓库
与代理仓库相反,它没有远程仓库,自己就是终点。主要用于多个模块开发时,将某一模块代码打包成jar包,发布到宿主仓库,其他项目成员可以从这个仓库下载你的打包好的模块jar包,在其他模块中使用这个模块类的功能。
① 在pom.xml中设置发布仓库如下,另将默认的<version>0.0.1-SNAPSHOT</version>中的内容改成1.0,不能由SNAPSHOT字样。

<distributionManagement>
<repository>
<id>releases</id>
<name>releases</name>
<url>http://localhost:8081/repository/maven-releases/</url>
</repository>
</distributionManagement>
② 在settings.xml中设置用户名密码,id要和上面对应。注意:匿名用户只有读取的权限,没有发布的权限。
<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
③ 右击项目—Run as—maven build…--在goals输入deploy,运行。


③ 运行完之后返回nexus页面,点击Browse—Components菜单—maven-release仓库,如下MavenTest项目已经成功发布到宿主仓库了。

group管理组

我们可以看到,maven直接连接的仓库有:宿主仓库1、仓库组、代理仓库2,而仓库组连接的仓库有:宿主仓库2、代理仓库1。
所以,maven连接到的仓库有:宿主仓库1、宿主仓库2、代理仓库1、代理仓库2。
group管理组,就是把两个或多个仓库,打包在一起的“升级版仓库”。
而建立group管理组也挺简单的:
建立group管理组:
① 打开nexus私服,点击create repository。

② 根据需求,选中带“group”字样的类型。

③ 输入group管理组的名称之后,选择管理组的成员类型,然后点击“create repository”。


④ group管理组创建成功。

参考文章:https://blog.csdn.net/wangb_java/article/details/53953891 https:/ /www. cnblogs.com/luotaoyeah/p/3791966.html
(十二)maven之nexus仓库的基本用法的更多相关文章
- maven(14)-nexus仓库基本用法
登录 启动nexus3,访问http://localhost:8081/ 点击右上角sign in登录,默认用户名:admin 密码:admin123,登陆后可以点击右上角的admin,修改默认密 ...
- (十二)Maven生命周期和插件
除了坐标.依赖以及仓库之外,Maven的另外两个核心概念是生命周期和插件.在有关Maven的日常使用中,命令行的输入往往就对应了生命周期,如mvn package就表示执行默认生命周期阶段packag ...
- Maven学习笔记(十二)-maven打包之resource配置
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011781521/article/details/79052725 一.简介 构建Maven项目的 ...
- Maven学习(十二)-----Maven POM
Maven POM POM代表项目对象模型.它是 Maven 中工作的基本单位,这是一个 XML 文件.它始终保存在该项目基本目录中的 pom.xml 文件.POM 包含的项目是使用 Maven 来构 ...
- Java开发学习(三十二)----Maven多环境配置切换与跳过测试的三种方式
一.多环境开发 我们平常都是在自己的开发环境进行开发, 当开发完成后,需要把开发的功能部署到测试环境供测试人员进行测试使用, 等测试人员测试通过后,我们会将项目部署到生成环境上线使用. 这个时候就有一 ...
- CentOS6.4 安装Maven及Nexus仓库代理
本文安装的apache-maven-3.5.0-bin.tar.gz,nexus-2.9.0-04-bundle.tar.gz 1.由于网络并不是特别好我这边是通过本地下载过来,通过sftp上传至Ce ...
- springboot系列十二、springboot集成RestTemplate及常见用法
一.背景介绍 在微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLConnection.Apache的Http Client.N ...
- 爬虫(十二):scrapy中spiders的用法
Spider类定义了如何爬去某个网站,包括爬取的动作以及如何从网页内容中提取结构化的数据,总的来说spider就是定义爬取的动作以及分析某个网页 工作流程分析 以初始的URL初始化Request,并设 ...
- 配置maven使用nexus
本文简单介绍使用配置maven使用nexus仓库,在团队中使用nexus,避免每个人都从中央仓库去下载依赖,节省带宽,提高下载速度,同时也减少了中央仓库的压力 配置在maven中使用nexus很简单( ...
随机推荐
- 爬虫库之BeautifulSoup学习(三)
遍历文档树: 1.查找子节点 .contents tag的.content属性可以将tag的子节点以列表的方式输出. print soup.body.contents print type(soup. ...
- eclipse编译Jmeter源码
1.在apache官网下载源码和安装包 http://jmeter.apache.org/ 2. 解压 解压安装包和源码包, 将安装包apache-jmeter-3.3 里lib ...
- PHP中的常用正则表达式集锦
PHP中的常用正则表达式集锦: 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xf ...
- 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之二 —— 准备
==== 目录 ==== 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之一 —— 开篇 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之二 —— ...
- Swift 4.0 中的 open,public,internal,fileprivate,private
1.private private访问级别所修饰的属性或者方法只能在当前类里访问. 2.fileprivate fileprivate访问级别所修饰的属性或者方法在当前的Swift源文件里可以访问. ...
- MySql 长时间读数据发生超时的异常 Mysql Reader Exception TimeOut expired
mysql connector: .net var r = cmd.ExecuteReader() r.Reader() // <--长时间不停调用 Timeout expired. Th ...
- C++中各种简写及全称的库
ATL(Active TEmplate Library)活动模板库 RPC(Remote Procedure Call Protocol)远程过程调用协议 DCE(Distributed Comput ...
- SpringBlade 2.0-RC3 发布,全新的微服务开发平台
经过了十天的艰苦奋斗,SpringBlade 2.0-RC3发布了,此版本增加了很多有用的功能,距离正式版本更近一步! SpringBlade简介: SpringBlade 2.0 是一个基于 Spr ...
- 在接口的实现类里使用@Override注解报错
问题分析 @Override注解用来检测子类对父类或接口的方法的重写是否正确,但有一次我在Eclipse里对接口的实现类里使用@Override注解却报错,不过在父类的子类里使用该注解却是正常的. 百 ...
- OSPF-1-OSPF的数据库交换(5)
三.LAN中的指定路由器 没有DR概念的话,共享同一条数据链路的一对路由器会形成完整的邻接关系,每对路由器之间都会直接交换它们的LSDB,假设在一个只有6台路由器的LAN中,其中没有DR,那么就会 ...