Maven:搭建私服Nexus

2023-10-29

Nexus 安装

下载地址

小诀窍:使用迅雷下载比直接用浏览器下载快很多

https://download.sonatype.com/nexus/3/latest-unix.tar.gz

上传、解压

上传到 Linux 系统,解压后即可使用,不需要安装。但是需要注意:必须提前安装 JDK。

启动 Nexus

/opt/nexus-3.37.0-01/bin/nexus start
/opt/nexus-3.37.0-01/bin/nexus status

查看端口占用情况

netstat -anp | grep java

tcp 0 0 127.0.0.1:45614 0.0.0.0:* LISTEN 9872/java
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 9872/java

上面 45614 这个每次都不一样,不用管它。我们要访问的是 8081 这个端口。但是需要注意:8081 端口的这个进程要在启动 /opt/nexus-3.37.0-01/bin/nexus 这个主体程序一、两分钟后才会启动,请耐心等待。

关闭防火墙

systemctl stop firewalld

访问 Nexus 首页

首页地址:http://[Linux 服务器地址]:8081/

初始化界面还是很酷的:
在这里插入图片描述

初始设置

在这里插入图片描述
在这里插入图片描述

这里参考提示:

用户名:admin
密码:查看 /opt/sonatype-work/nexus3/admin.password 文件

所以登录信息输入如下:

在这里插入图片描述

继续执行初始化:

在这里插入图片描述

给 admin 用户指定新密码:

在这里插入图片描述

匿名登录,启用还是禁用?由于启用匿名登录后,后续操作比较简单,这里我们演示禁用匿名登录的操作方式:

在这里插入图片描述

完成:

在这里插入图片描述

对接 Nexus

通过 Nexus 下载 jar 包

了解 Nexus 上的各种仓库

在这里插入图片描述

对接 Nexus

通过 Nexus 下载 jar 包

了解 Nexus 上的各种仓库

在这里插入图片描述

仓库类型 说明
proxy 某个远程仓库的代理
group 存放:通过 Nexus 获取的第三方 jar 包
hosted 存放:本团队其他开发人员部署到 Nexus 的 jar 包
仓库名称 说明
maven-central Nexus 对 Maven 中央仓库的代理
maven-public Nexus 默认创建,供开发人员下载使用的组仓库
maven-releasse Nexus 默认创建,供开发人员部署自己 jar 包的宿主仓库要求 releasse 版本
maven-snapshots Nexus 默认创建,供开发人员部署自己 jar 包的宿主仓库要求 snapshots 版本

初始状态下,这几个仓库都没有内容:
在这里插入图片描述

使用空的本地仓库

在这里插入图片描述

 <!-- 配置一个新的 Maven 本地仓库 -->
  <localRepository>D:/maven-repository-new</localRepository>
指定 Nexus 服务器地址

把我们原来配置阿里云仓库地址的 mirror 标签改成下面这样:

<mirror>
	<id>nexus-mine</id>
	<mirrorOf>central</mirrorOf>
	<name>Nexus mine</name>
	<url>http://192.168.198.100:8081/repository/maven-public/</url>
</mirror>

这里的 url 标签是这么来的:
在这里插入图片描述
在这里插入图片描述
把上图中看到的地址复制出来即可。如果我们在前面允许了匿名访问,到这里就够了。但如果我们禁用了匿名访问,那么接下来我们还要继续配置 settings.xml:

<server>
  <id>nexus-mine</id>
  <username>admin</username>
  <password>wuxian</password>
</server>

这里需要格外注意:server 标签内的 id 标签值必须和 mirror 标签中的 id 值一样。

效果

找一个用到框架的 Maven 工程,执行命令:

mvn clean compile

在这里插入图片描述

将 jar 包部署到 Nexus

配置 Maven 工程
<distributionManagement>
    <snapshotRepository>
        <id>nexus-mine</id>
        <name>Nexus Snapshot</name>
        <url>http://192.168.198.100:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

这里 snapshotRepository 的 id 标签也必须和 settings.xml 中指定的 mirror 标签的 id 属性一致。

执行部署命令
mvn deploy

引用别人部署的 jar 包

提出问题
  • 默认访问的 Nexus 仓库:maven-public
  • 存放别人部署 jar 包的仓库:maven-snapshots
配置 Maven 工程
<repositories>
    <repository>
        <id>nexus-mine</id>
        <name>nexus-mine</name>
        <url>http://192.168.198.100:8081/repository/maven-snapshots/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories>

修改仓库配置

举例:修改 maven-central 仓库代理的远程库地址
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Maven:搭建私服Nexus 的相关文章

随机推荐

  • 华为OD机试真题-选修课-2023年OD统一考试(B卷)

    题目描述 现有两门选修课 每门选修课都有一部分学生选修 每个学生都有选修课的成绩 需要你找出同时选修了两门选修课的学生 先按照班级进行划分 班级编号小的先输出 每个班级按照两门选修课成绩和的降序排序 成绩相同时按照学生的学号升序排序 输入描
  • 百度地图,如何成为智能化位置服务平台

    深几度 产业数字化 撰稿 吴俊宇 编辑 吴俊宇 审阅 梁欣婷 摘要 对行业而言 百度地图在当下的角色转变具备代表性意义 这是产业数字化浪潮下的一次成功转型 在过去移动生态下诞生的产品 在今天都值得深入挖掘其中的数据价值 这些价值可以延展至国
  • 安卓期末大作业-图书馆借书系统、图书借阅app(附下载链接)

    安卓期末大作业 图书馆借书系统 借书APP 可以注册登录 保存数据记录 含源码和导出app 运行截图 安卓期末大作业 图书借阅APP 老师给了95分 可以注册登录 借阅书籍 还书 含数据库存储借书记录 导入AndroidStudio即可使用
  • 信标链:以太坊2.0的新起点

    原创 市后诸葛 虽然以太坊2 0依旧用 以太坊 命名 但以太坊1 0和以太坊2 0其实是完全不同的两种架构 以太坊1 0和2 0的差别 远不是POW和POS的区别 在以太坊2 0里面 基础链就是 信标链 在真正的以太坊2 0里面 是只有po
  • @With,@Accessors(chanins=true),@ExtensionMethod——Lombok常用注解

    目录 一 With 很少用 二 Accessors 非常好用 一 fluent 布尔型 二 chain 布尔型 三 ExtensionMethod 实验阶段 一 With 很少用 这个注解可以用在类上也可以用在单个的成员变量上 使lombo
  • C++中的指针概念梳理

    在C 中指针通常难以理解 即使是有经验的程序员也常常因为调试指针引发的错误而备受折磨 笔者在学习C 时常常被指针弄得晕头转向 于是决定对指针的概念做一次梳理 希望本文能够对C 入门者有些许作用 1 指针的概念 指针 pointer 是 指向
  • Electron 实现切换暗_亮模式与主题

    文章末尾附上仓库地址 清单 模板基于 electron vite vue vue3 ts vite 组件库 element plus hooks库 vueuse useElementPlusTheme 初始化工程 使用 electron v
  • Tensorflow(二)MNIST数据集分类

    1 获取数据集 有两种方式可以得到数据集 第一是直接通过mnist input data read data sets MNIST data one hot True 进行联网下载 但这个方法可能很慢或者连接不到服务器 所以推荐使用第二个
  • 富文本 解决HTML字段

    转载自 https blog csdn net qq 36467463 article details 79072428 RichText Android平台下的富文本解析器 流式操作 低侵入性 支持Html和Markdown格式文本 支持
  • USRP B210常用软件安装

    系统需求 硬件配置 intel i5或以上 USB3 0接口 树莓派也可以 操作系统 ubuntu 20 04 ubuntu 18 04环境配置有些差异 如果按照这里的命令操作可能会出问题 可以用虚拟机吗 当然没问题 虚拟机是多好的发明 等
  • Flutter实现CombineExecutor进行多个异步分组监听,监听第一个异步执行的开始和最后一个异步执行结束时机。

    1 场景 我们在调用接口时 很多时候会同时调用多个接口 接口都是异步执行 我们很难知道调用的多个接口哪个会最后执行完成 我们有时候需要对最后一个接口执行完成的时机监听 所以基于该需求 设计了CombineExecutor 对类似的需求进行监
  • [pytest源码5]-pluggy深挖调用逻辑

    前言 本篇将详细分析如何通过PluginManager hook调用plugin实现 个人拙见 有错请各位指出 如果的我的文章对您有帮助 不符动动您的金手指给个Star 予人玫瑰 手有余香 不胜感激 GitHub pytest pluggy
  • PostgreSQL启动失败:本地计算机上的postgresq-x64-11服务启动后停止。某些服务或程序使用时将自动停止。

    PostgreSQL启动失败 本地计算机上的postgresq x64 11服务启动后停止 某些服务或程序使用时将自动停止 问题描述 安装PostgreSQL数据库后 启动服务时提示 本地计算机上的postgresq x64 11服务启动后
  • 云存储技术分析和架构框架设计

    摘要 随着互联网类新兴业务的激增 业务数据快速增长 云存储技术应运而生 本文深入剖析了云存储通用框架 硬件架构以及其底层原理这三个技术层面的差异性 为云存储架构框架设计提供了理论依据 再结合细分行业及其业务应用场景的差异性需求 最终确定了满
  • 小程序充值功能总结

    1 功能介绍 1 1 充值 功能描述 拉起小程序的支付组件 1 1 1 实现代码 1 1 2 注意要点 充值的关键点是openId和appId能匹配上 因为公众号和小程序生成的openId是不一样的 1 1 3 报错提示 1 request
  • 深度学习面试题总结-2022总结

    背景 社招 我估摸着校招聘一样会问 主要方向 自动驾驶 祝愿每一个求职者都可以顺利 谢谢大家的支持 我刷题的思路就是repeat repeat repeat 背 背 背 背着背着就懂了 刷的dp 二叉树目前一题没考 好苦 地平线1面 自我介
  • 用Android Studio制作一个简易的计算器,Android开发经验的有效总结

    首先建立按钮 这只是单单的建议按钮 连接按钮的代码在底下 public class MainActivity extends AppCompatActivity implements View OnClickListener private
  • spring boot + sql server大数据量批量新增

    先发出来 注释慢慢完善 获取类中所有属性注解 TableId和 TableField param instance return throws NoSuchFieldException public static Map
  • 安装ubuntu22.04系统,配置国内源以及ssh远程登录

    一 安装ubuntu22 04系统 原文连接 Ubuntu操作系统22 04版本安装教程 VMware虚拟机 wx63f86e949a470的技术博客 51CTO博客 1 点击界面左侧的开启此虚拟机 即可进入Ubuntu操作系统安装界面 点
  • Maven:搭建私服Nexus

    Nexus 安装 下载地址 小诀窍 使用迅雷下载比直接用浏览器下载快很多 https download sonatype com nexus 3 latest unix tar gz 上传 解压 上传到 Linux 系统 解压后即可使用 不