Maven 公司内部私服中央仓库搭建 局域网仓库 资源共享 依赖包构建共享

介绍

公司内部私服搭建通常是为了更好地管理公司内部的依赖包和构建过程,避免直接使用外部 Maven 中央仓库。通过搭建私服,团队能够控制依赖的版本、提高构建速度并增强安全性。公司开发的一些公共工具库更换的提供给内部使用。

私服是一种特殊的远程仓库,资源共享与资源同步问题。架设在局域网内的仓库服务,用来代理位于外部的中央仓库,用于解决团队内部的资源共享问题。

仓库读取JAR包流程

配置私服地址

使用私服,需要在maven的settings.xml配置文件中,做如下配置:

配置账号密码

xml 复制代码
<server>
    <id>maven-releases</id>
    <username>admin</username>
    <password>admin</password>
</server>
    
<server>
    <id>maven-snapshots</id>
    <username>admin</username>
    <password>admin</password>
</server>

私服连接地址

如果之前配置过阿里云,需要直接替换掉

xml 复制代码
<mirror>
    <id>maven-public</id>
    <mirrorOf>*</mirrorOf>
    <url>http://192.168.150.101:8081/repository/maven-public/</url>
</mirror>

配置仓库

xml 复制代码
<profile>
    <id>allow-snapshots</id>
        <activation>
        	<activeByDefault>true</activeByDefault>
        </activation>
    <repositories>
        <repository>
            <id>maven-public</id>
            <url>http://192.168.150.101:8081/repository/maven-public/</url>
            <releases>
            	<enabled>true</enabled>
            </releases>
            <snapshots>
            	<enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
</profile>

项目版本

RELEASE(发行版本):功能趋于稳定、当前更新停止,可以用于发行的版本,存储在私服中的RELEASE仓库中。

SNAPSHOT(快照版本):功能不稳定、尚处于开发中的版本,即快照版本,存储在私服的SNAPSHOT仓库中。

上传私服

需要在项目的pom.xml文件中,增加如下配置

xml 复制代码
<distributionManagement>
    <!-- release版本的发布地址 -->
    <repository>
        <id>maven-releases</id>
        <url>http://192.168.150.101:8081/repository/maven-releases/</url>
    </repository>
    
    <!-- snapshot版本的发布地址 -->
    <snapshotRepository>
        <id>maven-snapshots</id>
        <url>http://192.168.150.101:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>


上传成功

使用私服

xml 复制代码
<dependency>
    <groupId>com.maven</groupId>
    <artifactId>maven-test</artifactId>
    <version>0.0.1</version>
</dependency>
相关推荐
薪火铺子20 小时前
SpringMVC请求处理流程源码解析(第3篇):视图渲染与异常处理
java·后端·spring
逻辑驱动的ken21 小时前
Java高频面试场景题19
java·开发语言·面试·职场和发展·求职招聘
leoufung21 小时前
LeetCode 42:接雨水 —— 从“矩形法”到双指针的完整思考过程
java·算法·leetcode
小碗羊肉21 小时前
【MySQL | 第十一篇】InnoDB引擎
java·数据库·mysql
Dylan的码园21 小时前
Maven基础架构与整体认识
java·junit·maven
弹不出的5h3ll1 天前
Ghost Bits:高位截断如何让 Java WAF 形同虚设
java·开发语言
庞轩px1 天前
第七篇:注解与APT深度解析——从@Override到Lombok的底层原理
java·注解·编译·lombok
千寻girling1 天前
五一劳动节快乐 [特殊字符][特殊字符][特殊字符]
java·c++·git·python·学习·github·php
计算机安禾1 天前
【Linux从入门到精通】第47篇:SystemTap与eBPF——Linux内核观测的显微镜
java·linux·前端
user_admin_god1 天前
企业级-实践-流式接口-TEXT_EVENT_STREAM_VALUE
java