一、文件目录
nexus2.12.0\sonatype-work\nexus 下的文件
health-check 健康检查(心跳)
indexer 每个仓库的索引解析文件
logs 日志文件
storage 每个仓库数据文件(jar包、元数据、索引文件等)
sonatype-work\nexus\indexer 下的文件
每个文件夹中存放索引的解析文件
sonatype-work\nexus\storage\central 下的文件
.index 索引原文件目录
javax 、 mysql 下载的jar文件目录
sonatype-work\nexus\storage\central\.index 下的文件
二、仓库名称和定义
仓库类型(type)
group:仓库组
hosted:宿主
proxy:代理
virtual:虚拟
仓库格式(Format)
有两种maven1和maven2,下面的仓库分类只介绍maven2
仓库策略(Policy)
Release:发布版本
Snapshots:快照版本
仓库分类介绍
Public Repositories:该仓库组将Policy(策略)为Release的仓库聚合并通过一个地址对外提供服务
3rd party:用来部署无法从公共仓库获取的第三方发布版本的jar包
Apache Snapshots:用来代理Apache Maven仓库的快照版本jar包
Central:该仓库代理Maven中央仓库,其Policy(策略)为Release,因此只会下载和缓存中央仓库中的发布版本jar包
Codehaus Snapshots:用来代理CodeHaus Maven仓库的快照版本jar包
Release:用户部署组织内部的发布版本的jar包
Snapshots:用来部署组织内部的快照版本的jar包
三、仓库配置
中央仓库自动下载索引文件,本质是在添加了Task任务。(用到了Quartz)
修改Releases配置,将Deployment Policy设置为Allow Redeploy。
既部署策略:修改为 允许重新部署。
四、中央仓库索引下载和使用
方法一:
由上图,中央仓库 Download Remote Indexes 修改为 ture 后会自动去下载索引文件。
下载后的索引文件为
解析后的索引文件
在浏览器输入:
http://localhost:8084/nexus/content/repositories/central/.index/nexus-maven-repository-index.gz
就会把索引文件下载。
刷新查看
方法二:
手动下载索引文件,会在Scheduled Task 添加一个任务。
修复索引:重新下载索引文件,然后解析索引。
方法三:
手动更新索引
下载索引文件:
https://repo1.maven.org/maven2/.index/
或者
http://repo.maven.apache.org/maven2/.index/
下载索引jar包
maven.outofmemory.cn/org.apache.maven.indexer/indexer-cli/
把下载的文件放在同一目录
命令窗口定位到该目录然后执行执行: java -jar indexer-cli-5.1.1.jar -u nexus-maven-repository-index.gz -d indexer
等待几分钟,先关闭nexus服务,然后清空 sonatype-work\nexus\indexer\central-ctx ,把解压完毕 indexer里面的文
粘贴到该文件夹,重启nexus服务,刷新索引,索引就可以重新使用。
五、组仓库同步索引
选择组仓库,右击选择更新索引。
会在sonatype-work\nexus\storage\public\.index文件夹下同步索引
在浏览器输入 http://localhost:8084/nexus/content/groups/public/.index/nexus-maven-repository-index.gz就会把索引文件下载。
六、上传第三方jar
七、添加阿里代理仓库
阿里 仓库镜像地址:https://maven.aliyun.com/nexus/content/groups/public
可以参考阿里配置指南:https://help.aliyun.com/document_detail/102512.html?spm=a2c40.aliyun_maven_repo.0.0.30be3054sXkNli
添加代理仓库
输入名称和地址
保存完毕后可能出现这种情况 in service - Remote Automatically Blocked and Unavailable(远程自动阻止和不可用)
修改方法是:把Auto Blocking Enabled 修改为 false
修改后的样子
把新添加的仓库 添加到组仓库并调整位置
这样通过私服下载 jar时 阿里镜像仓库会优先中央仓库下载,提高速度。