背景

  最近接手一个其他公司的项目,因为工程中使用了maven,而且里面有很多他们自己封装很多自己的构件(就是jar、war等等),需要将他们maven私服迁移到我们的私服上去,因为网络环境不通,所以不能建代理仓库过去,下面介绍一种很简单的办法。

nexus介绍

  1、nexus安装文件

  nexus,下载后包含两个部分,一部分是nexus,主要包含运行时需要的文件,比如依赖的jar包、启动文件等;另一部分是sonatype-work,主要包含nexus生成的配置文件、仓库文件(包文件)、日志文件等。

  2、nexus仓库类型

  nexus的仓库类型有三种:

  1、仓库组,将各种仓库聚合在一起的虚拟仓库组

    在配置界面中可以选择Nexus中的仓库,将其聚合成一个虚拟的仓库组,注意,仓库组所包含的仓库的顺序决定了仓库组便利其所含仓库的次序,因此最好将常用的仓库放在前面,当用户从仓库组下载构件的时候,就能经快的访问到包含构件的仓库。

  2、宿主仓库,用来发布一些第三方不允许的构件,如商业软件、自己发布的jar等。

  3、代理仓库,代理远程的仓库,如Maven官方中央仓库,而代理仓库会间接地从远程仓库下载并缓存构件。

  

解决方案

  因为环境网路不通,使用代理仓库代理远程仓库就行不通了,但是代理仓库会间接地从远程仓库下载并缓存构件,可以利用这一属性,将远程的仓库本地化,把构件缓存到本地来。再在环境中搭建一个私服,上传已经缓存下来的构件,模拟远程仓库作用。

获取待迁移的构件

  在一个网络能够联通的环境中,搭建本地私服,不管是在Windows环境还是Linux环境,只需要下载安装包,启动即可。

  1.下载nexus安装包,解压后。在bin目录下找到nexus.sh启动nexus服务;

  2.在nexus中建一个代理仓库地址,地址配置成对方的仓库地址(可以是中央仓库,也可以是对方的私服,这个视具体情况而定)。

  

  3.本地的maven的配置文件settings.xml中的配置成本地搭建的私服地址,在项目中更新依赖的pom文件,将所需的构件下载到本地私服中去。

将构件引入原有的私服

  1.在需要搭建的私服的环境中,搭建一个新的私服,并将上述建好的本地私服的sonatype-work文件夹上传到新私服下,里面有之前加载好的构件等文件。.

  2.在原有私服中,新建一个代理仓库,在配置中配好新私服的地址。这样就将待迁移构件引入到原有的私服中去了。

内网环境下搭建maven私服小技巧的更多相关文章

  1. Ubuntu server下搭建Maven私服Nexus

    Ubuntu server下搭建Maven私服Nexus Maven私服Nexus的作用,主要是为了节省资源,在内部作为maven开发资源共享服务器来使用. 1.下载 通过root用户进去Ubuntu ...

  2. 内网环境下为Elasticsearch 5.0.2 添加head服务

    背景: 本项目的服务器是内网环境,没有网络,因此需要在离线的环境中,安装head服务. 需要用到的安装包有: node的安装包 elasticsearch的head插件源码 说明:此次只讲述为elas ...

  3. 记录一下自己总结出来的,在内网环境下使用maven打包的各种方法,包括各种常用的打包方式(一)

    (一)内外网代理仓库搭建 想了一下,先用这个MAVEN安装部署的说明随笔,作为自己的第一篇技术帖,往后会陆陆续续将自己研究的心得发出来,留下脚印.希望有大神可以指点 一 .文章主要解决问题说明 1) ...

  4. Linux下搭建maven私服Nexus 3.2.1-01

    1. 私服介绍私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库:否则, ...

  5. kali ms17_010 内网环境下渗透笔记

    一.先用Router Scan 扫描 看清楚了网络拓扑结构. 二.使用MS17-010批量扫描工具 下载:ms17-010Scan.exe  (也可以用kali自带的nmap和ms17-10模块扫) ...

  6. 虚拟机系统ubuntu12.04(内网环境下的虚拟主机)开启远程连接访问

    一.工具准备: 1.内网虚拟机Ubuntu12.04系统主机一台,开放端口为:29999 2.远程连接软件:mobaxterm 二.开启步骤: 1.查看端口状态信息: netstat -antl | ...

  7. Ubuntu 11.10 Server下搭建Maven私服

      安装Nexus服务的文档可以参考官方站点:http://www.sonatype.com/books/nexus-book/reference/install-sect-install.html ...

  8. Docker 环境下搭建nexus私服

    一.安装docker 1.脚本安装 本机环境CentOS7,用户为root 下载脚本到工作目录 curl -fsSL https://get.docker.com -o get-docker.sh 执 ...

  9. 小伙伴问我:如何搭建Maven私服?我连夜肝了这篇实战文章!!

    写在前面 十一假期期间,也有很多小伙伴不忘学习呀,看来有很多小伙伴想通过十一长假来提升自己的专业技能!这不,就有小伙伴在微信上问我:如何搭建Maven私服?让我专门推一篇搭建Maven私服的文章.安排 ...

随机推荐

  1. 如何将web转化成应用程序?

    nativefier  最近无意中发现这个开源项目,Nativefier,看着它的项目介绍,以及1w+ 的 Star,感觉自己错过了一个世纪. 介绍 Nativefier是一个命令行工具,可以轻松地为 ...

  2. TCP拥塞控制算法之NewReno和SACK

    TCP拥塞控制算法之NewReno和SACK 2018年05月23日 19:10:03 吃吃爱学习 阅读数:1446    版权声明:程序媛吃吃的博客 https://blog.csdn.net/m0 ...

  3. Storage Port Drivers

    为了学习存储知识,我也是拼了,来,翻译一下下面这篇微软的文章(如果有谁翻译过了,或者微软有中文翻译,请绕路): Storage Port Drivers Last Updated: 4/20/2017 ...

  4. NOIP1999提高组 题解报告

    T1 导弹拦截 题目大意:依次有\(n\) (\(n \le 10^5\))枚导弹,一套导弹拦截系统只能拦截一系列高度递减的导弹(一套系统拦截的弹道不一定相邻).求一套系统最多能拦截多少导弹,以及最少 ...

  5. Java 实例 - instanceof 关键字用法

    Java 实例 - instanceof 关键字用法 instanceof 是 Java 的一个二元操作符,类似于 ==,>,< 等操作符. instanceof 是 Java 的保留关键 ...

  6. arcgis python 发送邮件

    import arcgisscripting, smtplib, os, sys, traceback from email.MIMEMultipart import MIMEMultipart fr ...

  7. DMA详解

    1.DMA由来DMA(Direct Memory Access,直接存储器访问).在DMA出现之前,CPU与外设之间的数据传送方式有程序传送方式.中断传送方式.CPU是通过系统总线与其他部件连接并进行 ...

  8. androidStudio: ERROR: Error occurred while communicating with CMake server.

    遇到此错误的原因是cmake服务器协议版本不匹配: 解决方案: 1:直接更新android studio看能否解决: 2:如果解决不了,那么将androidstudio,ndk ,cmake,grad ...

  9. 【分类算法】感知机(Perceptron)

    0 - 算法描述 感知机算法是一类二分类算法,其问题描述为,给定一个训练数据集 $$T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\},$$ 其中$x_i\in \m ...

  10. RT-Thread代码启动过程——以及 $Sub$ $main 与 $Super$ $main

    [转]https://blog.csdn.net/yang1111111112/article/details/80913001 我们找到系统复位的地方,可以往下单步跟踪. ①从系统初始化开始执行,将 ...