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仓库的基本用法的更多相关文章

  1. maven(14)-nexus仓库基本用法

    登录 启动nexus3,访问http://localhost:8081/  点击右上角sign in登录,默认用户名:admin  密码:admin123,登陆后可以点击右上角的admin,修改默认密 ...

  2. (十二)Maven生命周期和插件

    除了坐标.依赖以及仓库之外,Maven的另外两个核心概念是生命周期和插件.在有关Maven的日常使用中,命令行的输入往往就对应了生命周期,如mvn package就表示执行默认生命周期阶段packag ...

  3. Maven学习笔记(十二)-maven打包之resource配置

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011781521/article/details/79052725 一.简介 构建Maven项目的 ...

  4. Maven学习(十二)-----Maven POM

    Maven POM POM代表项目对象模型.它是 Maven 中工作的基本单位,这是一个 XML 文件.它始终保存在该项目基本目录中的 pom.xml 文件.POM 包含的项目是使用 Maven 来构 ...

  5. Java开发学习(三十二)----Maven多环境配置切换与跳过测试的三种方式

    一.多环境开发 我们平常都是在自己的开发环境进行开发, 当开发完成后,需要把开发的功能部署到测试环境供测试人员进行测试使用, 等测试人员测试通过后,我们会将项目部署到生成环境上线使用. 这个时候就有一 ...

  6. CentOS6.4 安装Maven及Nexus仓库代理

    本文安装的apache-maven-3.5.0-bin.tar.gz,nexus-2.9.0-04-bundle.tar.gz 1.由于网络并不是特别好我这边是通过本地下载过来,通过sftp上传至Ce ...

  7. springboot系列十二、springboot集成RestTemplate及常见用法

    一.背景介绍 在微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLConnection.Apache的Http Client.N ...

  8. 爬虫(十二):scrapy中spiders的用法

    Spider类定义了如何爬去某个网站,包括爬取的动作以及如何从网页内容中提取结构化的数据,总的来说spider就是定义爬取的动作以及分析某个网页 工作流程分析 以初始的URL初始化Request,并设 ...

  9. 配置maven使用nexus

    本文简单介绍使用配置maven使用nexus仓库,在团队中使用nexus,避免每个人都从中央仓库去下载依赖,节省带宽,提高下载速度,同时也减少了中央仓库的压力 配置在maven中使用nexus很简单( ...

随机推荐

  1. junit4 Assert静态方法及API

    junit中的assert方法全部放在Assert类中. 1.assertTrue/False([String message,]boolean condition);    用来查看变量是是否为fa ...

  2. SpringMVC数据绑定二(List、Set和Map类型)

    1.List类型绑定 //联系信息类 用户类的子属性 public class ContactInfo { private String phone; private String address; ...

  3. Cookie和Session(3)

    关于Cookie和Session Cookie和Session都为了用来保存状态信息,都是保存客户端状态的机制,它们都是为了解决HTTP无状态的问题而所做的努力. 1)cookie 是一种发送到客户浏 ...

  4. http协议之版本差异(2)

    —————————————HTTP1.0/HTTP1.1—————————————— 建立连接方面 HTTP/1.0 每次请求都需要建立新的TCP连接,连接不能复用.HTTP/1.1 新的请求可以在上 ...

  5. Unity 与 Android (Android Studio)的交互

    http://blog.csdn.net/kuerjinjin/article/details/50177633 1.大体思路: 在Android Studio 中编译导出Jar库,提供函数供 Uni ...

  6. 51nod1276(xjb)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1276 题意:中文题诶- 思路:xjb 通过画图可以发现对于当前 ...

  7. 2012 Noip提高组 Day2

    1265. [NOIP2012] 同余方程 ★☆   输入文件:mod.in   输出文件:mod.out   简单对比时间限制:1 s   内存限制:128 MB [题目描述] 求关于 x 的同余方 ...

  8. [Xcode 实际操作]八、网络与多线程-(23)多线程的同步与异步的区别

    目录:[Swift]Xcode实际操作 本文将演示线程的同步与异步的区别. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 异步线程的运行,是没有按照顺序执行的. ...

  9. luoguP2408不同子串个数

    传送门 可以知道每一个子串都是后缀的前缀,那么对于第\(i\)小的后缀的贡献就可以表示为n-sa[i]+1 然而会存在重复的子串,注意height数组的定义,对于sa[i-1]和sa[i],只有hei ...

  10. day01 包 权限修饰符 static final