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>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • input事件的获取

    input事件的获取loop线程已经运行起来了,如果不出意外,它是不会终止的;不妨以此为起点,再开始一段新的旅程,我要去探索input事件的获取。一EventHub构造函数EventHub是所有输入事件的中央处理站,凡是与输入事件有关的事它都管。上帝创造万事万物都是有原因的,看看构造它是出于什么目的。EventHub::EventHub(void):mBuiltInKeybo

  • Android Bundle类

    Android Bundle类

  • fvwm 中文手册_kindle vol

    fvwm 中文手册_kindle volFvwmisawindowmanagerforX11.Itisdesignedtominimizememoryconsumption,providea3Dlooktowindowframes,andavirtualdesktop.—TheFVWM(F?VirtualWindowManager)manual在看这个文档之前你

  • 如何安装win10和linux双系统。以及引导系统问题。

    如何安装win10和linux双系统。以及引导系统问题。1.安装环境介绍首先,出于本人学习需要,要用到linux系统,但是经常又会用到win10,因此迫切需要双系统的电脑。所在本人就琢磨着怎么在不删除原来win10的情况下可以装一个linux的ubuntu系统。2.常见的安装步骤 2.1首先在想要安装linux系统的磁盘的尾巴步压缩出一个大概50G的空间,超大预算,压缩出来的空间在这里不用建立成新分区,待后面备用。在这里,本人选的是非系统盘…

  • REST API和SOAP API区别[通俗易懂]

    REST API和SOAP API区别[通俗易懂]RESTAPI优点:1.轻量级的解决方案,不必向SOAP那样要构建一个标准的SOAPXML。2.可读性比较好:可以把URL的名字取得有实际意义。3.不需要SDK支持:直接一个Http请求就可以,但是SOAP则可能需要使用到一些Webservice的类库(例如Apache的Axis)缺点:1.复杂的应用中,URL可能非常长,而且不容易解析。SOAPAPI优点:1.定…

  • 第八章 软件项目团队管理

    第八章 软件项目团队管理本章内容提纲8.1软件项目团队管理概述8.2项目组织的规划8.3团队人员获取8.4团队建设和日常管理8.5沟通管理8.6软件专业人员的非技术素养8.1软件项目团队管理概述什么是软件项目团队?   软件项目团队是由软件项目的不同干系人所组成的,具有共同目标、紧密协作的集体。软件项目团队包括所有项目干系人:项目发起人、资助者、项目组(开发团队)、供应商、客户等。有时,软件项目团队特指项…

发表回复

您的电子邮箱地址不会被公开。

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