(一)内外网代理仓库搭建

想了一下,先用这个MAVEN安装部署的说明随笔,作为自己的第一篇技术帖,往后会陆陆续续将自己研究的心得发出来,留下脚印.希望有大神可以指点

一 、文章主要解决问题说明

1) 由于各种原因限制,必须在内网进行java等的开发工作

2)由于网络限制,外网下包困难

3)构建、打包、测试、部署方便一体化

4)解决java包依赖关系冲突问题

5)可方便在开发时候跟进各种官方API源码进行学习

二、代理仓库的搭建

1) 其实如果是在外网开发,只需要一个MAVEN就足够了,但是在内网,离开了中央仓库的MAVEN等于失去了獠牙的老虎.所以在内网构建一个代理仓库是能够很好使用MAVEN的基础.

2)我的搭建方式:

代理仓库有很多,我就推荐我自己觉得好的代理仓库nexus 可以在官网下载nexus的包,nexus代理仓库是可以免费使用的.当然土豪可以购买,享受该仓库更专业方面的服务.不过我们来说,构建MAVEN能用的代理仓库,免费版就足够了

需要下载的包:maven.tar.gz nexus.tar.gz jdk

jdk的安装我就不说了。maven和nexus可自行去下最新版,这些都是公共的都能下的到,当然如果有朋友有需求,我可以把我的包分享给大家

选择一台能连接外网的机器

将nexus解压到目录,因为nexus几乎可以在任何环境下运行,所以linux和windows都可以,解压后,确定JAVA_HOME配好,进入bin目录选择自己的操作系统,如果是windows,直接双击bat文件 如果是linux,输入启动命令 ./nexus [启动模式] 。

这里启动有很多种。一般我主要用console start stop方式。console启动后,打在控制台,控制台关闭服务就关闭。start 和stop会打成后台服务。关闭控制台照样能运行

启动后在浏览器输入http://127.0.0.1:8081/nexus 若能看见nexus仓库界面,即表示安装完成

点击右侧log in输入账号密码admin admin123

点击左侧repositories进入仓库设置界面。这里有很多仓库很多用法,有兴趣的朋友可以自己去查资料研究。我这边只介绍能用来作MAVEN代理的基本功能

在代理仓库中选择central仓库,在下方点击configuration 在外网环境中一定记得将Download Remote Indexes 设为true,这样代理仓库才会下载索引。而我们需要的正是这个索引

在配置中还有个Remote Storage Location 是远程仓库的地址,可以根据需求自己添加,不过默认的repo1的仓库也已经差不多够用了。如果需要配置其他仓库,可以去搜索其他的仓库地址

配置好后点击保存,然后在Browse remote选项卡中点击刷新,如果能看见远程仓库的索引文件就代表配置成功了

 然后我们需要在外网将这个索引下载下来。需要右键central  选择update index,然后会等待漫长的时间,等待索引文件下好。期间可以查看下载进度在左侧选项栏里面点击Administrator的Scheduled Tasks 
索引文件非常大,经常在一两个G左右。而且会由于一些特殊原因下载不稳定。这时候我们可以去直接下载索引文件,然后拷贝解压到本地索引目录即可
http://repo1.maven.org/maven2/.index/nexus-maven-repository-index.properties
http://repo1.maven.org/maven2/.index/nexus-maven-repository-index.gz
这是下载地址,下载后,将nexus仓库关闭,然后解压到索引目录即可。
因为nexus启动后默认会在同级安装目录建设本地仓库,所以进入sonatype-work进入indexer目录,因为我们的代理名为central所以找到central-ctx ,将下载好的文件解压进去后。重新启动nexus,若能在central 的browse index中看到和remote一样的索引,即代表成功完成。
到此外网的nexus代理仓库搭建基本完成,若要通过maven进行访问需要代理仓库地址。我们可以进入public repository中点击configuration 查看centural是否在左侧中,若没有就添加进去,然后将public仓库的地址拷贝出来,一般情况下是http://127.0.0.1:8081/nexus/content/groups/public/ 将这个地址配置进MAVEN中即可访问该代理仓库。
 
外网代理仓库配好后,我们需要在内网也搭建一个。这个比较简单。直接将我们刚刚搭好的外网代理仓库的安装目录和仓库目录全部拷贝到内网中即可。记得一定要将sonatype-work带上,这才是仓库地址。在内网选好位置后,将两个文件拷贝过去。注意目录同级。然后启动nexus(同样使用适合自己的操作系统启动) 启动后,在浏览器中输入nexus仓库地址,能和外网一样,进入并且看见browse index即代表完成。
 
至此代理仓库搭建基本完成。下面将逐步介绍内网maven的使用,以及与eclipse的使用。由于时间有限。这些留到下P来讲
 
第一次发技术贴,不太习惯发图,上传好慢。往后有空我会逐步更新。有问题可以提出,想要资源的如果我有我会提供
 
 
 
 

记录一下自己总结出来的,在内网环境下使用maven打包的各种方法,包括各种常用的打包方式(一)的更多相关文章

  1. ArcGIS API for javascript开发笔记(二)——解决ArcGIS Service中的服务在内网环境下无法进行javascript预览问题

    感谢一路走来默默支持和陪伴的你~~~ ----------------------------拒绝转载-------------------------------- 1.问题说明 在使用ArcGIS ...

  2. 内网环境下搭建maven私服小技巧

    背景 最近接手一个其他公司的项目,因为工程中使用了maven,而且里面有很多他们自己封装很多自己的构件(就是jar.war等等),需要将他们maven私服迁移到我们的私服上去,因为网络环境不通,所以不 ...

  3. 在内网环境使用WPAD/PAC和JS攻击win10

    转:https://mp.weixin.qq.com/s/qoEZE8lBbFZikKzRTwgdsw 在内网环境使用WPAD/PAC和JS攻击win10 2018-03-01 wangrin 看雪学 ...

  4. 断网环境下利用pip安装Python离线安装包

    这几天搞Windows离线断网环境下安装Python包,配置环境,各种坑!做个记录,供以后查询吧. # 生产环境 windows 7 # python 2.7.9 # pip 1.5.2 友情提示:当 ...

  5. ArcGIS for Service中JavaScript预览在内网环境无法使用

    1.问题说明 在使用ArcGIS for Service时经常会遇到一个问题,那就是我们需要对已经发布的服务进行预览,预览时点击对应服务,选择View in中的ArcGIS JavaScript就可在 ...

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

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

  7. [Linux]非外网环境下配置lnmp心得

    1.安装gcc编译器 基本所有编译安装包都需要gcc编译器,而且编译安装gcc也需要一个编译器,这是一个悖论.所以,这里只能寻求rpm包安装.但是rpm包需要匹配特定的操作系统内核,所以没有一个通用的 ...

  8. linux服务器没网情况下手动安装软件几个方法

    1,找到一个有网的服务器,使用yumdownloader gcc,获取需要的rmp包: 2,在http://pkgs.org 下下载所需要的rpm包

  9. 离线环境下安装ansible,借助有网环境下pip工具

    环境 有网的机器(192.168.19.222):rhe65,python2.7.13,pip9.0.1 离线机器(192.168.19.203):rhe65,python2.6 FTP(192.16 ...

随机推荐

  1. ImageView的学习

    学习安卓时我还是习惯看懂手册,虽然是英文但是可以获得的东西必然也是更多的,否则自己只能停留在拾人牙缝的水平,虽然我是初学,但是还是分享一些自己的学习过程及方法. 从手册中我们看以知道,ImageVie ...

  2. php视图操作

    一.视图的基本介绍          视图是虚拟的表.与包含数据的表不一样,视图只包含使用时动态检索数据的查询.         使用视图需要MySQL5及以后的版本支持.         下面是视图 ...

  3. zepto源码研究 - ajax.js($.ajaxJSONP 的分析)

    简要:jsonp是一种服务器和客户端信息传递方式,一般是利用script元素赋值src来发起请求.一般凡是带有src属性的元素发起的请求都是可以跨域的. 那么jsonp是如何获取服务器的数据的呢? j ...

  4. linux初识-01简介

    什么是linux: Linux是一个自由的,免费的,源码开发的操作系统Linux的特点: 开放性.多用户,多任务,具有丰富的网络功能 可靠的系统安全 良好的可移植性 良好的用户界面(命令界面和图形界面 ...

  5. treeview递归

    1.数据库 table A( ID int pk, Value varchar, Fid int ) A: ID   Value    Fid 1   value1     0 2   value2  ...

  6. asp.net 防止页面刷新或后退引起重复提交

     项目中经常遇到刷新后重复的向数据库增加一条相同的记录,造成数据重复,如何规避这些问题呢?下面我们就一起讨论一下在asp.net怎样防止页面刷新或后退引起重复提交数据的问题: 其实asp.net防止刷 ...

  7. REDIS学习(1)环境搭建

    1.下载 稳定版本的.tar.gz 包,解压到/usr/local/src/. 2 .cd 到文件夹下,不需要 configure 直接 make编译 ,成功之后,cd /usr/local/redi ...

  8. 50个PHOTOSHOP快捷键技能!

    一.常用的热键组合 1.图层混合模式快捷键:正常(Shift + Option + N),正片叠底(Shift + Option + M),滤色(Shift + Option + S),叠加(Shif ...

  9. Altium Designer打印设置

    1:1打印PCB设置 如图1所示,打开PCB,点击“FileàPage Setup…”. 进入设置对话框,在“ScalingàScale Mode”下拉条中选择 “Scale Print”. 如图3所 ...

  10. linux grep shell相关

    http://blog.csdn.net/buutterfly/article/details/6615162 http://www.2cto.com/os/201307/224496.html ht ...