一、使用背景:
通过中央仓库俩获取所需的构件,实际开发中会存在由于网速慢,下载jar包久,不利于公共构件的管理与维护。
解决方案:搭建maven私服
优点:本地仓库下载速度优先于远程仓库下载,可自行进行构建的管理与维护(第三方jar包、公共构件等)
二,相关产品
相关产品:Apache Archiva、Artifactory、Sonatype Nexus
Sonatype Nexus:
-
强大的Maven仓库管理,简化了内部仓库的维护与外部仓库的访问。
-
不需要数据库,使用文件系统与Lucene来组织数据
三、安装配置
nexus-2.12.0-01-bundle.tar.gz提取链接:
链接:https://pan.baidu.com/s/1FMNW8A3Na7fMyG0Mapwa2A
提取码:oueo
安装环境:CentOS7 64位、JDK1.8
安装配置:tar -zxvf nexus-2.12.0-01-bundle.tar.gz
启动:
1.修改启动脚本:
vim /usr/local/nexus/nexus-2.12.0-01/bin/nexus
新增RUN_AS_ROOT=root
启动:/usr/local/nexus/nexus-2.12.0-01/bin/nexus start
默认端口:8081(可在/conf/nexus.properties中修改)
默认用户名/密码:admin/admin123
访问:http://服务器IP:8081/nexus/
2.修改配置:
自动下载索引配置:
开启远程索引:与maven中央仓库同步
Central Repositories设置:Download Remote Indexes 为true,开启索引下载。
右键点击更新:
可查看下载任务:
文件会很多,很慢,推荐使用手动下载
手动下载索引配置:
获取相关文件:
链接:https://pan.baidu.com/s/1OstDUIickTr3NIYqmOrqUw
提取码:q273
新建目录存放文件:mkdir -p /usr/local/nexus/index
运行:java -jar indexer-cli-5.1.0.jar -u nexus-maven-repository-index.gz -d indexer 时间有点长。。
替换文件:
cd /usr/local/nexus/sonatype-work/nexus/indexer/central-ctx
rm -rf *
cp -r /usr/local/nexus/index/indexer/* /usr/local/nexus/sonatype-work/nexus/indexer/central-ctx/
启动nexus:/usr/local/nexus/nexus-2.12.0-01/bin/nexus start
访问:http://服务器IP:8081/nexus/(如果访问不了,试着重启防火墙:firewall-cmd --reload,8081端口需要放开)
更新操作:
刷新后,出现以下文件夹说明手动下载成功