配置Nexus私服

私服是一种特殊的远程仓库,它代理广域网上的远程仓库,供局域网下的maven用户使用。
目前Nexus3的官方下载地址为

https://help.sonatype.com/repomanager3/product-information/download

,由于下载较慢(真的很慢),我们可以从其他途径下载其他用户的安装文件,这里不再赘述,笔者下载的版本为nexus-3.19.1-01-win64

安装并运行

下载完成之后为一个zip的安装包在这里插入图片描述
这里我们解压该文件,进入到bin目录中
在这里插入图片描述
在该目录打开cmd,输入命令nexus.exe/run即可启动服务,nexus的默认端口号为8081,也就是说访问地址为:localhost:8081,如果需要修改端口号,我们可以在etc/nexus-default.properties中进行修改
在这里插入图片描述
如果想以localhost:8081/nexus进行访问,可以修改该文件中的nexus-context-path为nexus-context-path=/nexus/
笔者这里将端口号改为了8082,访问路径添加了nexus,启动服务后页面如下
在这里插入图片描述
这里我已经登录了,默认的登录名称为admin,初始密码保存在nexus安装目录下的 sonatype-work 的 admin.password 文件中,打开复制即可,第一次登录之后需要重新设置密码
打开Browse标签可以看到各种内置仓库
在这里插入图片描述

私服中type的解释

在这里插入图片描述
从图片中我们看到type主要分为group、proxy和hosted三种类型

  • group:是一个逻辑存储库,它由多个其他存储库组合而来。当需要从多个仓库中获取依赖时,可以将这些仓库组合成一个 Group 存储库,并将该 Group 存储库添加到项目的仓库列表中。这样,使用者只需配置一个仓库即可获得来自各个组成仓库的元件。
  • proxy:是一个代理远程仓库的本地存储库。当第一次请求某个依赖时,Nexus 会从远程仓库自动下载该依赖,并在本地缓存一份副本。下次请求相同的依赖时,Nexus 将直接返回缓存中的副本,避免再次访问远程仓库。
  • hosted:指本地托管的存储库。也就是说,该存储库是由 Nexus 托管的本地文件夹或数据库存储的。Hosted 存储库用于存储内部构件、发布本地开发或定制的 JAR 文件等。通常情况下,Hosted 存储库是 Maven 构件的生产环境。

修改私服依赖的默认存储位置

Nexus私服从配置的远程仓库中下载的依赖默认存储在安装路径下的sonatype-work\nexus3\blobs中,并且不是以jar文件存储,而是以.bytes文件存储的
如果你想修改默认存储位置,需要在web页面进行更改,如下图所示
在这里插入图片描述
在这里插入图片描述
完成后以后你新建仓库就可以选择存储位置了

配置maven从私服中下载构件

我们可以在maven的setting.xml中修改镜像的配置,注释掉你的aliyun镜像(如果有的话),然后添加如下镜像

	<mirror><id>nexusid><name>nexus mavenname><url>http://localhost:8082/nexus/repository/maven-public/url><mirrorOf>*mirrorOf>mirror>

该镜像代理对所有远程仓库的访问,也就是说,所有访问远程仓库请求都由私服处理。另外解释一下,我这里的URL是maven-public的仓库组的URL,该仓库组配置了多个Nexus的内置仓库,所以只需要配置这个URL即可访问私服中的多个仓库,当然你也可以一个一个配置,但是请注意mirrorOf标签的填写

上传构件到私服中

有时,我们可能会遇到一些场景,有的依赖在远程仓库不存在,但是我们的项目又需要这些依赖,那么这时我们就可以将依赖上传到私服中供公司内部使用。
一般我个人会创建一个hosted类型的仓库专门用来存储第三方依赖,如下图所示
在这里插入图片描述
创建仓库之后可以上传第三方依赖了
在这里插入图片描述
圆圈部分需要说一下,这里表示是否生成一个包含 Maven 坐标信息的 POM 文件,如果你不选择则不会生成。一般地,如果我们上传的依赖中没有pom文件的话需要勾选,并且packaging需要填写文件类型(jar、war等),之后就会生成一个简单的pom文件标识,其中包含了构建产物的坐标信息,如 groupId、artifactId 和 version 等,这样我们就可以通过项目中的pom.xml进行依赖的引入了。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部