当前位置: 首页 > news >正文

Nexus2迁移升级到Nexus3

与 Nexus 2.x 相比,Nexus 3.x 为我们提供了更多实用的新特性。SonaType 官方建议我们,使用最新版本 Nexus 2.x 升级到最新版本 Nexus 3.x,并在 Nexus 升级兼容性 一文中为我们提供了各个版本 Nexus 升级到最新版本 Nexus 3.x 的流程,如下表。

旧版本升级流程
3.1.0 或更高版本
  1. 升级到最新 3.x 版本
3.0.0 到 3.0.2
  1. 学习 3.1.0 中引入的重要目录布局
  2. 升级到最新 3.x 版本
最新 2.x 版本
  1. 升级到最新 3.x 版本
2.0 及 其他 2.x 版本
  1. 升级到最新 2.x 版本
  2. 升级到最新 3.x 版本
1.x 
  1. 升级到 2.7.2 之前的任何 2.x 版本 
  2. 升级到最新 2.x 版本
  3. 升级到最新 3.x 版本

注:Nexus 1.x 不支持直接升级到 2.7.2 之后的版本 

由上表可知,从 Nexus 2.x 升级到 Nexus 3.x 需要 2 步:

  1. 升级到 Nexus 2.x 最新版本
  2. 升级到 Nexus 3.x 最新版本

升级到 Nexus 2.x 最新版本

1. 下载并提取 Nexus 2.x 最新版本

下载并解压最新版本的 Nexus 2.x(目前为 Nexus-2.14.20-02)

2. 替换工作目录 

无论是 Nexus 2.x 还是 Nexus 3.x,其安装包在解压后都包含两部分:

  • nexus-版本号        Nexus 应用程序目录 
  • sonatype-work    Nexus 工作目录(真正的仓库,同时包含了 Nexus 的配置,如定时任务、用户配置)

若 Nexus 的版本升级是在大版本相同的情况下进行的(例如从 Nexus 2.11.4-01 升级到 Nexus-2.14.20-02),则只需要将新的 Nexus 工作目录复制到现有版本的目录下,替换旧版本 Nexus 的工作目录即可。

3. 修改配置文件

如果用户对以下文件的默认配置进行了任何更改,则需要在新版本中手动进行相同的更改,Nexus 不支持将这些文件从一个版本复制到另一个版本。

  • <应用程序目录> /conf/nexus.properties
  • <应用程序目录> /conf/jetty*.xml
  • <应用程序目录> /bin/jsw/conf/wrapper.conf
  • <应用程序目录> /nexus/WEB-INF/classes/ehcache.xml
  • <应用程序目录> /conf/logback*.xml

由于 Nexus 升级迁移过程需要同时启动 Nexus 2.x 和 Nexus 3.x,为了防止端口(两者默认端口都是 8081)冲突,我们可以将 Nexus 2.x 启动时监听的端口(端口在 <应用程序目录>/conf/nexus.properties 中配置)修改为 8082。

nexus 端å£å·

4. 将 Nexus 2 服务指向新实例

在以上步骤完成后,如果旧版本 Nexus 是作为 Windows 服务运行的,那么我们需要将旧版本的 Nexus 服务卸载,然后使用新实例重新安装 Nexus 服务,具体操作步骤如下。

1) 使用 win +R 快捷键,打开运行窗口,输入 services.msc,点击确定按钮。

è¿è¡çªå£

 2)进入Windows 服务列表,找到服务名为 nexus 的服务。

nexus æå¡

3)双击 nexus 服务,打开服务属性窗口,可以看到该服务指向的是旧版本的 Nexus 2.x。

nexus 屿§

 4)在旧版本 Nexus 应用程序目录下的 bin\jsw\windows-x86-64 目录(根据本机操作系统而定)中,以管理员身份运行 uninstall-nexus.bat,卸载 nexus 服务。

å¸è½½æ§çæ¬ nexus æå¡

 5)在新版本 Nexus 应用程序目录下的 bin\jsw\windows-x86-64 目录(根据本机操作系统而定)中 ,以管理员身份运行 install-nexus.bat,安装 nexus 服务。

å®è£æ°çæ¬ nexus æå¡

 6)再次进入服务列表,查看 nexus 服务属性,可以看到该服务已经指向新版本 Nexus 实例。

5. 启动新实例

在新版本 Nexus 的 <应用程序目录>\bin\jsw\windows-x86-64 目录(根据本机操作系统而定),以管理员身份运行 start-nexus.bat。启动成功后,在浏览器地址栏输入:http://localhost:8082/nexus,访问新版本 Nexus 2.x 用户界面。 

升级到 Nexus 3.x 最新版本

将 Nexus 2.x 升级到 Nexus 3.x,从本质上说就是将 Nexus 2.x 中的数据传输或迁移到 Nexus 3.x。
Nexus 2.x 升级到 Nexus 3.x 通常需要如下 4 步:

  1. Nexus 2.x 启用 Upgrade: Agent (升级代理)功能
  2. Nexus 3.x 启用 Upgrade (升级)功能
  3. 在 Nexus 3.x 中配置升级信息
  4. 运行升级程序

1. Nexus 2.x 启用  Upgrade: Agent 功能

Nexus 2.x 升级到 Nexus 3.x 的第一步,就是在 Nexus 2.x 中开启 Upgrade: Agent 功能,操作步骤如下。

1)在 Nexus 2.x 用户界面左侧的导航栏中,点击 Administration 下的 Capabilities,查看 Nexus 2.x 功能列表,如下图。

Nexus åè½å表

 2)点击 Capabilities 列表上方的 New 按钮,新建一个类型(Type)为 Upgrade: Agent 的功能,并填写 Access Token,最后点击下方的 Add 按钮,如下图

Nexus 2.x æ·»å  å级代çåè½

3) 返回列表页,可以看到已经添加了  Upgrade: Agent,选中该功能可以在下方查看或修改其中配置,如下图。

Nexus 2.x å级代ç

这里需要注意的是,Access Token 扮演的角色十分的重要,它是 Nexus 之间数据传输的重要凭证之一。

Nexus 3.x 启用 Upgrade 功能

接下来,我们需要在 Nexus 3.x 中开启 Upgrade 功能,用来接收来自 Nexus 2.x 传输的数据,具体步骤如下。
1)点击最上方的齿轮状图标,切换到 Nexus 3.x “管理和配置”模块,然后点击 System 下的 Capabilities ,查看 Nexus 3.x 功能列表,如下图

Nexus 3.x åè½å表

 2)点击列表上方的 Create capability 按钮,创建一个类型(Type)为 Upgrade 的功能,如下图。

Nexus 3.x æ°å»º Upgrade

 3)随后我们发现,不但在功能列表中新增了一条类型为 Upgrade 的数据,而且在 System 下还多出了一个 Upgrade 菜单,如下图。

Nexus 3.x Upgrade åè½

运行升级程序

1)Nexus 3.x 启用升级功能后,点击 System 下的 Upgrade ,进入升级程序概述。概述中介绍了升级过程中的注意事项、允许升级的内容、无法升级的内容。阅读完成后,点击下方的 Next 按钮。

Nexus 3.x å级ç¨åºæ¦è¿°

 2)跳转到 “代理链接(Agent Connection)”页面,配置 URL 、Access Token 等字段,配置完成后,点击下方的 Next 按钮。

Nexus Agent Connection

以上字段说明如下:

  • URL:Nexus 2.x 的完整访问地址,例如 http://localhost:8082/nexus。
  • Access Token:Nexus 2.x 启用升级代理(Upgrade: Agent)功能时配置的 Access Token。

3)跳转到“内容”页面,在该页面中,我们需要选择升级过程中传输的内容,包括以下 2 项:

  • 仓库的配置及内容
  • Nexus 服务器配置

 选择完成后,点击下方的 Next 按钮。

Nexus 3.x Content

 4)跳转到“仓库默认设置(Repository Defaults)”页面,设置仓库内容的存储位置(Blob store)以及数据传输方式(Data Transfer Method),设置完成后,点击下方的 Next 按钮。

Nexus 3.x ä»åºé»è®¤è®¾ç½®

 5)跳转到“仓库(Repositories)” 页面,选择迁移的仓库,选择完成后,点击下方得 Next 按钮,如下图。

Nexus åçº§éæ©ä»åº

除了选择升级得仓库,点击仓库列表最后一列的配置图标,可以为仓库自定义升级选项,如下图。

Nexus èªå®ä¹å级

 6)配置完成后,点击最下方的 Next 按钮,跳转到 “预览(Preview)”页面。该页面中展示了所有的升级配置信息,确认无误后,点击下面的 Begin 按钮,开始运行升级程序,如下图。

Nexus å级é¢è§

 7)开始升级前,会先跳转到 “准备(Preparing)”页面,先进行简短的准备工作。当准备工作进度条到达 100% 后,点击下方的 Continue 按钮,继续进行下一步。

Nexus 3.x å级工ä½

 8)跳转到“同步(Synchronizing)”页面,在这里 Nexus 升级程序会执行两步操作,扫描仓库和数据同步。仓库扫描完成后,点击下方的 Continue 按钮,开始同步数据。同步开始以后,再对 Nexus 2.x 仓库所做的任何修改都不会同步到 Nexus 3.x 中。

Nexus åæ­¥

 9)同步完成后,点击下方的 Done 按钮,退出升级程序。

Nexus è¿ç§»åçº§å®æ

10)点击最上方的立方体图标,切换到 Nexus 3.x “浏览”模块,点击左侧的 Browse 菜单,浏览 Nexus 3.x 仓库列表,可以看到 Nexus 2.x 中的仓库及构件都已经迁移到 Nexus 3.x 了。

Nexus 3.x ä»åºå表

相关文章:

Nexus2迁移升级到Nexus3

与 Nexus 2.x 相比&#xff0c;Nexus 3.x 为我们提供了更多实用的新特性。SonaType 官方建议我们&#xff0c;使用最新版本 Nexus 2.x 升级到最新版本 Nexus 3.x&#xff0c;并在 Nexus 升级兼容性 一文中为我们提供了各个版本 Nexus 升级到最新版本 Nexus 3.x 的流程&#xff…...

在线OJ平台项目

一、项目源码 Online_Judge yblhlk/Linux课程 - 码云 - 开源中国 (gitee.com) 二、所用技术与开发环境 1.所用技术: MVC架构模式 (模型&#xff0d;视图&#xff0d;控制器) 负载均衡系统设计 多进程、多线程编程 C面向对象编程 & C 11 & STL 标准库 C Boost 准标…...

go语言kafka入门

消息队列&#xff1a;一种基于异步通信的解耦机制&#xff0c;用于在应用程序或系统组件之间传递消息和数据 消息队列相关概念&#xff1a; 生产者&#xff08;Producer&#xff09;&#xff1a;生成并发送消息到消息队列中的应用程序或系统组件。 消费者&#xff08;Consumer&…...

自定义拖拽功能,上下拖拽改变盒子高度

核心在于监听鼠标的move来改变div的高度&#xff0c;抽成了组件 <template><div ref"container" class"drag"><z-tooltip v-if"isShowIcon" effect"dark" content"格式化" placement"top-start"&…...

JavaScript Es6_4笔记

JavaScript 进阶 文章目录 JavaScript 进阶深浅拷贝浅拷贝深拷贝递归实现深拷贝js库lodash里面cloneDeep内部实现了深拷贝JSON序列化 异常处理throwtry ... catchdebugger 处理this普通函数箭头函数改变this指向callapplybind 防抖节流 深浅拷贝 浅拷贝 首先浅拷贝和深拷贝只…...

Python“牵手”易贝(Ebay)商品列表数据,关键词搜索ebayAPI接口数据,ebayAPI接口申请指南

Ebay平台API接口是为开发电商类应用程序而设计的一套完整的、跨浏览器、跨平台的接口规范&#xff0c; EbayAPI接口是指通过编程的方式&#xff0c;让开发者能够通过HTTP协议直接访问Ebay平台的数据&#xff0c;包括商品信息、店铺信息、物流信息等&#xff0c;从而实现Ebay平…...

C语言:选择+编程(每日一练Day8)

目录 选择题&#xff1a; 题一&#xff1a; 题二&#xff1a; 题三&#xff1a; 题四&#xff1a; 题五&#xff1a; 编程题&#xff1a; 题一&#xff1a;字符个数统计 思路一&#xff1a; 题二&#xff1a;多数元素 思路一&#xff1a; 本人实力有限可能对一些…...

使用 uniapp 适用于wx小程序 - 实现移动端头部的封装和调用

图例&#xff1a;红框区域&#xff0c;使其标题区与胶囊对齐 一、组件 navigation.vue <template><view class"nav_name"><view class"nav-title" :style"{color : props.color, padding-top : toprpx,background : props.bgColor,he…...

ARM Linux 系统稳定性分析入门及渐进 13 -- gdb 反汇编 disassemble 命令详细介绍及举例】

文章目录 1.1 gdb 调试回顾1.1.1 gdb list 命令介绍 1.2 反汇编命令 dis 介绍1.2.1 如何设置 gdb 汇编代码的格式 1.1 gdb 调试回顾 在GNU调试器&#xff08;GDB&#xff09;中&#xff0c;有许多命令可以帮助我们调试应用程序。 gdb: 这是一个强大的Unix下的程序调试工具。以…...

python连接Microsoft SQL Server 数据库

python代码 Author: tkhywang 2810248865qq.com Date: 2023-08-21 11:22:24 LastEditors: tkhywang 2810248865qq.com LastEditTime: 2023-08-21 11:29:30 FilePath: \PythonProject02\Microsoft SQL Server 数据库.py Description: 这是默认设置,请设置customMade, 打开koroFi…...

docker可视化工具

安装Portainer 官方安装说明&#xff1a;https://www.portainer.io/installation/ [rootubuntu1804 ~]#docker pull portainer/portainer[rootubuntu1804 ~]#docker volume create portainer_data portainer_data [rootubuntu1804 ~]#docker run -d -p 8000:8000 -p 9000:90…...

MySQL 用户管理操作

目录 一、用户管理概述 二、用户管理 1、创建用户 2、删除用户 三、账户密码管理 1、root用户修改自己的密码 2、ROOT用户修改其他普通用户密码 3、普通用户修改自己的密码 4、ROOT用户密码忘记解决办法 1&#xff09;Linux系统 2&#xff09;windows系统 四、用户权…...

【python办公自动化】PysimpleGUI中的popup弹窗中的按钮设置居中

PysimpleGUI中的popup弹窗中的按钮设置居中 背景问题解决背景 默认的popup弹窗中的OK按钮是在最下面偏左侧一些,有时需要将按钮放置居中 问题解决 首先找到pysimplegui源代码文件中popup的部分 然后定位到19388行,源文件内容如下 关于popup弹窗OK按钮的设置,将pad属性…...

postgresql 同步流复制两个相关参数synchronous_commit 和 synchronous_standby_names

一&#xff1a;synchronous_commit 1.synchronous_commit参数含义 这个参数用来设置事务提交返回客户端之前&#xff0c;一个事务是否需要等待 WAL 记录被写入磁盘。合法的值是{local,remote_write,remote_apply,on,off}。默认设置是on。 2.各可选值含义 2.1 local 当事务…...

运算放大器发展史

在内部集成了一个补偿电容 MPS公司OP07推出后&#xff0c;大受欢迎。各家厂商都推出了自己的 这4款都是可以替换的...

LVS+Keepalived 实验

Keepalived 是什么 Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案&#xff0c;可以解决静态路由出现的单点故障问题的一款检查工具 在一个LVS服务集群中通常有主服务器&#xff08;MASTER&#xff09;和备份服务器&#xff08;BACKUP&#xff09;两种角色的服务器…...

FreeSWITCH 1.10.10 简单图形化界面1 - docker/脚本/ISO镜像安装

FreeSWITCH 1.10.10 简单图形化界面1 - docker/脚本/ISO镜像安装 0. 界面预览1. Docker安装1.1 下载docker镜像1.2 启动docker镜像1.3 登录 2. 脚本安装2.1 下载2.2 安装2.3 登录2.4 卸载程序 3. 镜像安装3.1 下载镜像3.2 安装镜像3.3 登录 0. 界面预览 http://myfs.f3322.net…...

内网渗透神器CobaltStrike之权限提升(七)

Uac绕过 常见uac攻击模块 UAC-DLL UAC-DLL攻击模块允许攻击者从低权限的本地管理员账户获得更高的权限。这种攻击利用UAC的漏洞&#xff0c;将ArtifactKit生成的恶意DLL复制到需要特权的位置。 适用于Windows7和Windows8及更高版本的未修补版本 Uac-token-duplication 此攻…...

使用haproxy搭建web架构

haproxy HAProxy是一个免费的负载均衡软件&#xff0c;可以运行于大部分主流的Linux操作系统上。 HAProxy提供了可以在七层和四层两种负载均衡能力&#xff0c;它可以提供高可用性、负载均衡、及基于TCP和HTTP应用的代理。适用于负载大的Web站点&#xff0c;在运行在硬件上可…...

Java基础之IO流File类创建及删除

1.File类概述及构造方法 2.File类创建功能 文件创建成功&#xff01; 如果文件不存在&#xff0c;就创建文件&#xff0c;并返回true 如果文件存在&#xff0c;就不创建文件&#xff0c;并返回false 如果文件夹不存在&#xff0c;就创建文件夹&#xff0c;并返回true 如果文件…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

C++ 设计模式 《小明的奶茶加料风波》

&#x1f468;‍&#x1f393; 模式名称&#xff1a;装饰器模式&#xff08;Decorator Pattern&#xff09; &#x1f466; 小明最近上线了校园奶茶配送功能&#xff0c;业务火爆&#xff0c;大家都在加料&#xff1a; 有的同学要加波霸 &#x1f7e4;&#xff0c;有的要加椰果…...

jmeter聚合报告中参数详解

sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample&#xff08;样本数&#xff09; 表示测试中发送的请求数量&#xff0c;即测试执行了多少次请求。 单位&#xff0c;以个或者次数表示。 示例&#xff1a;…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...

【安全篇】金刚不坏之身:整合 Spring Security + JWT 实现无状态认证与授权

摘要 本文是《Spring Boot 实战派》系列的第四篇。我们将直面所有 Web 应用都无法回避的核心问题&#xff1a;安全。文章将详细阐述认证&#xff08;Authentication) 与授权&#xff08;Authorization的核心概念&#xff0c;对比传统 Session-Cookie 与现代 JWT&#xff08;JS…...