Nexus3的使用[通俗易懂]

Nexus3的使用[通俗易懂]nexus的简介、安装以及Maven项目中使用Nexus仓库

大家好,又见面了,我是你们的朋友全栈君。

一、Nexus 简介

nexus是一个强大的maven仓库管理器(私服),它极大的简化了本地内部仓库的维护和外部仓库的访问

特点:

  • 节省外网带宽。
  • 加速Maven构建。
  • 部署第三方构件。
  • 提高稳定性,增强控制。
  • 降低中央仓库的负荷。
  • 控制和审计
  • 建立本地内部公用仓库

Nexus 仓库类型:

  • hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库。比如公司的第二方库。
  • proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。
  • group,仓库组,用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用资源时就不需要多次引用了,只需要引用一个group即可。

二、Nexus 安装

下载Nexus好以后解压会有两个文件夹:nexus的和sonatype-work。前者是功能的实现,后者负责存储数据。

进入nexusbin目录下:启动(nexus.exe /run) ,启动之后访问http://localhost:8081/,点击Browse可以看到4个默认的仓库
Nexus内置的4个仓库
说明

  • maven-centralmaven中央库,默认从https://repo1.maven.org/maven2/拉取jar
  • maven-releases:私库发行版jar
  • maven-snapshots:私库快照(调试版本)jar
  • maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用。

如果不够用,自己也可以根据上面的仓库类型进行选用创建。

三、Maven 使用 Nexus 仓库

3.1 上传 jar 包

上传jar包需要认证,修改Maven的配置文件settings.xmlservers标签下配置:

 <servers>
    <server>
        <id>release_user</id>
        <username>admin</username>
        <password>admin123</password>
    </server>
    <server>
        <id>snapshot_user</id>
        <username>admin</username>
        <password>admin123</password>
    </server>
</servers>

这里配置两个用户,一个部署release类型jar包的,一个是部署snapshot类型jar包的。id用于唯一指定一条认证配信息,之后会在pom中使用。

Maven工程的pom文件中添加distributionManagement标签,该标签负责描述maven deploy上传远程仓库:

<distributionManagement>
    <repository>
        <id>release_user</id>
        <name>Release Deploy</name>
        <url>http://localhost:8081/repository/maven-releases/</url>
    </repository>
    <snapshotRepository>
        <id>snapshot_user</id>
        <name>Snapshot Deploy</name>
        <url>http://localhost:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

URL从图形化界面的这里复制,id即刚才在Maven配置文件中配置的用户信息,name可以随意
复制URL

执行mvn clean deploy就可以在仓库中看到上传的jar包。

3.2 拉取 jar 包

拉取jar包需要在Maven工程的pom文件中添加repositories标签:

<repositories>
    <repository>
        <id>nexus-public</id>
        <name>Nexus Public</name>
        <url>http://localhost:8081/repository/maven-public/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158126.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • KeyValuePair和Dictionary详解:「建议收藏」

    KeyValuePair和Dictionary详解:「建议收藏」1、KeyValuePaira、KeyValuePair是一个结构体(struct);b、KeyValuePair只包含一个Key、Value的键值对。2、Dictionarya、Dictionary可以简单的看作是KeyValuePair的集合;b、Dictionary可以包含多个Key、Value的键值对。usingSystem;usingSystem.Collections.Generic;namespaceConsoleTest

    2022年7月15日
    14
  • java分层打印二叉树_基于Java的二叉树层序遍历打印实现

    java分层打印二叉树_基于Java的二叉树层序遍历打印实现层序遍历的思路:若树为空,则返回空,否则从树的第一层开始,即从根节点,从上而下逐层遍历。1.二叉树层序遍历Ⅰ——剑指offer32-Ⅰ从上到下,从左到右打印二叉树,返回一维数组int[]res。classSolution{publicint[]levelOrder(TreeNoderoot){if(root==null)returnnewint[0];Queueq=…

    2022年5月11日
    29
  • C语言stat函数_fileno函数

    C语言stat函数_fileno函数  函数原型intstat(constchar*file_name,structstat*buf);表头文件:#include&lt;unistd.h&gt;#include&lt;sys/stat.h&gt;stat()用来将参数file_name所指的文件状态,复制到参数buf所指的结构中。constchar*表示文件的路径,structstat*buf表示声明…

    2022年8月21日
    4
  • wxpython入门教程_wxPython 入门教程

    wxpython入门教程_wxPython 入门教程这篇文章是关于wxPython,但wxPython实际是两件事物的组合体:Python脚本语言和GUI功能的wxWindows库(关于wxWindows的介绍,请参阅developerWorks上的“细述wxWindows”)。wxWindows库是为了最大可移植性的C/C++库,而抽取GUI功能。所以wxWindows应用程序与生俱来地可以运行在Win…

    2022年5月21日
    18
  • python的源代码下载_官方下载python源码,编译linux版本的python「建议收藏」

    python的源代码下载_官方下载python源码,编译linux版本的python「建议收藏」我这里使用的时centos7-mini,centos系统本身默认安装有python2.x,版本x根据不同版本系统有所不同,可通过python–V或python–version查看系统自带的python版本有一些系统命令时需要用到python2,不能卸载1、安装依赖包1)首先安装gcc编译器,gcc有些系统版本已经默认安装,通过gcc–version查看,没安装的先安装g…

    2022年8月23日
    11
  • 程序员必备的 4 款录屏工具,免费无广告!

    程序员必备的 4 款录屏工具,免费无广告!公众号关注“GitHubDaily”设为“星标”,每天带你逛GitHub!大家好,我是小G。今天给大家介绍四款在电脑端超级好用录屏软件,学习和工作、录游戏的时候再也不愁找不到好用…

    2022年6月21日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号