首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Maven搭建私服

  • 25-04-17 22:21
  • 3543
  • 10298
juejin.cn

一,私服的安装与配置

nexus服务器的下载地址:sonatype.com

下载好相应的系统版本,解压开,其中包含两个目录,一个为服务器(nexus),一个为工作空间(sonatype-work)(运行的所有数据)image-20230925222424845

启动:

  1. 进入服务器的bin目录,打开cmd命令行输入:nexus /run nexus

  2. 启动时间较长,请耐心等待,如果出现Started Sonatype ***则为启动成功

访问: 默认地址为 http://loclhost:8081,浏览器回车后进入到页面

  • 修改端口的方法:在服务器目录下的/etc/nexus-default.properties文件修改端口
  • 修改服务器内存等配置:在服务器目录下的/bin/nexus.vmoptions文件
  • 在使用的时候我们需要登录,其中登录账号是admin,密码保存在工作目录/nexus3/admin.password文件内

刚安装好的nexus一共给我们创建了7个仓库(不同的nexus版本可能有一点差距),我们只需要关注Format为maven2的仓库即可,也就是一共有4个:

  • maven-central:该仓库用来代理 Maven 中央仓库,其策略为 Release,只会下载和缓存中央仓库中的发布版本的构件。
  • maven-releases:策略为 Release 的宿主仓库,用来部署公司或组织内部的发布版本构件。
  • maven-snapshots:策略为 Snapshot 的宿主仓库,用来部署公司或组织内部的快照版本构件。
  • maven-public:仓库组,默认聚合了以上三个仓库。

在私服中修改访问权限,允许匿名用户访问

image-20230926091256152

在私服中配置代理仓库地址,即配置镜像源

image-20230926091333103

image-20230926091343022

将默认的中央仓库地址,改为阿里云镜像:

url
代码解读
复制代码
http://maven.aliyun.com/nexus/content/groups/public/

二,私服的仓库分类

仓库分类:

  • 宿主仓库hosted:保存无法从中央仓库获取的资源。

    例如自己研发的项目。

    第三方非开源项目。

  • 代理仓库proxy:代理远程仓库,通过nexus访问其他公共仓库,例如中央仓库。

  • 仓库组group:

    • 将若干仓库组成一个群组,简化配置。
    • 仓库组不能存放资源,是属于设计型仓库。

私服的资源获取如下图:

image-20230925223001481

三,WebUI仓库使用方法

  1. 创建仓库

    image-20230925223904519
  2. 将仓库加入maven-public群组中

    image-20230925224146142

    image-20230925224221058

  3. 通过网页ui方式上传资源到仓库中

    image-20230925224509311

    image-20230925224525229

    image-20230925224536106

    其中group id等参数就是你jar包的坐标

四,idea环境中资源的上传与下载

idea操作流程:

image-20230925224955430

配置流程:

  1. 配置本地仓库访问私服的权限在maven安装路径下的/conf/settings.xml中

    xml
    代码解读
    复制代码
    <servers> <server> <id>maven-releaseid> <username>adminusername> <password>adminpassword> server> <server> <id>maven-snapshotsid> <username>adminusername> <password>adminpassword> server> servers>
  2. 配置本地仓库资源来源也在settings.xml中

    xml
    代码解读
    复制代码
    <mirrors> <mirror> <id>nexus-mavenid> <mirrorOf>*mirrorOf> <url>http://172.31.154.122:8081/repository/maven-public/url> mirror> mirrors>
  3. 在idea中配置pom文件中添加内容:

    xml
    代码解读
    复制代码
    <distributionManagement> <repository> <id>maven-releaseid> <url>http://172.31.154.122:8081/repository/maven-releases/url> repository> <snapshotRepository> <id>maven-snapshotsid> <url>http://172.31.154.122:8081/repository/maven-snapshots/url> snapshotRepository> distributionManagement>

    流程:idea发布资源包时,通过url访问仓库,通过id找到本地仓库中的server配置的账号密码来访问仓库。

  4. idea的maven点击deploy就发布到私服了。

    image-20230925234836704

  5. 将maven的代理仓库配置远程仓库为阿里云仓库

    进入Nexus界面,选择中央仓库

    image-20230925235658299

    将原地址 repo1.maven.org/maven2/ 改为阿里云的地址 maven.aliyun.com/nexus/conte… 即可

    image-20230925235830205

五,使用Docker快速搭建maven私服

  1. 拉取镜像

    bash
    代码解读
    复制代码
    docker pull sonatype/nexus3
  2. 创建外部挂载文件

    bash
    代码解读
    复制代码
    #挂载文件夹一定要放开权限,否则后面启动nexus时会无法启动 mkdir -p /usr/local/nexus-data && chmod 777 /usr/local/nexus-data
  3. 启动容器

    bash
    代码解读
    复制代码
    docker run \ -d --name=nexus3 \ -p 8081:8081 \ -v /usr/local/nexus-data:/nexus-data \ sonatype/nexus3

登录账号admin,密码可以去看看nexus-data里面的admin.password文件

注:本文转载自juejin.cn的normaling的文章"https://juejin.cn/post/7493810284810502144"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

133
开发工具
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top