Maven 配置学习:存在两个本地私服如何配置

Maven 配置学习:存在两个本地私服如何配置

目录

  • [Maven 配置学习:存在两个本地私服如何配置](#Maven 配置学习:存在两个本地私服如何配置)

如果需要配置两个私服和一个公共仓库,并使 IntelliJ IDEA 可以按照指定顺序尝试下载依赖,可以在 Maven 的 settings.xml 文件中进行配置。下面是一个包含两个私有仓库和一个公共仓库(阿里云公共仓库)的配置示例:

xml 复制代码
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                              https://maven.apache.org/xsd/settings-1.0.0.xsd">

  <!-- 本地仓库位置 -->
  <localRepository>D:/m2_repo</localRepository>

  <profiles>
    <profile>
      <id>custom-repositories</id>
      <repositories>
        <!-- 私有仓库 1 -->
        <repository>
          <id>private-repo-1</id>
          <url>http://192.168.0.203:8000/nexus/content/groups/public/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>

        <!-- 私有仓库 2 -->
        <repository>
          <id>private-repo-2</id>
          <url>http://192.168.0.66:8089/nexus/content/groups/public/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>

        <!-- 阿里云公共仓库 -->
        <repository>
          <id>aliyun</id>
          <url>https://maven.aliyun.com/repository/public</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
    </profile>
  </profiles>

  <activeProfiles>
    <!-- 启用配置的自定义仓库 -->
    <activeProfile>custom-repositories</activeProfile>
  </activeProfiles>
</settings>

解释:

1.本地仓库位置:

  • <localRepository>D:/m2_repo</localRepository>:指定 Maven 使用 D:/m2_repo 作为本地仓库路径。

2.Profiles 定义:

  • 定义了一个 custom-repositories profile,包含了所有需要的仓库:
    • 私有仓库 1(192.168.0.203)
    • 私有仓库 2(192.168.0.66)
    • 阿里云公共仓库

3.Repositories 定义顺序:

  • Maven 会按照定义的顺序依次尝试从这些仓库下载依赖。因此,这个配置确保了 Maven 在下载依赖时会先尝试两个私有仓库,然后再尝试阿里云公共仓库。

4.Active Profiles:

  • <activeProfiles> 块中启用了 custom-repositories profile,使得 Maven 在构建过程中使用这些仓库。

操作步骤:

  • 1.将上述配置添加到 Maven 的 settings.xml 文件中。该文件通常位于用户主目录下的 .m2 目录中(例如:C:\Users\YourUsername.m2\settings.xml 或 ~/.m2/settings.xml)。

  • 2.根据需要修改 settings.xml 文件中的仓库 URL 和本地仓库路径。

  • 3.确保 标签包含 custom-repositories 以启用自定义的仓库配置。

  • 4.保存修改后的 settings.xml 文件。

通过这种方式,IntelliJ IDEA 将会遵循定义的顺序,依次尝试从两个私有仓库和阿里云公共仓库下载依赖。这样可以确保系统在不同的仓库中查找所需的依赖,避免因为某个仓库中缺少依赖而导致构建失败。

Maven官方文档


👑 天下英雄出我辈,一入江湖岁月催 我是热爱生活的「 无间行者 」,努力把实践过的解决方案分享给大家 如果这篇文章对你有用,一键三连,感谢你的鼓励,让我知道你在看


相关推荐
斐波娜娜4 分钟前
Maven详解
java·开发语言·maven
Bug退退退1236 分钟前
RabbitMQ 高级特性之事务
java·分布式·spring·rabbitmq
程序员秘密基地10 分钟前
基于html,css,vue,vscode,idea,,java,springboot,mysql数据库,在线旅游,景点管理系统
java·spring boot·mysql·spring·web3
皮皮林55123 分钟前
自从用了CheckStyle插件,代码写的越来越规范了....
java
小码氓27 分钟前
Java填充Word模板
java·开发语言·spring·word
会飞的天明27 分钟前
Java 导出word 实现饼状图导出--可编辑数据
java·word
Muxiyale34 分钟前
使用spring发送邮件,部署ECS服务器
java·服务器·spring
01传说1 小时前
vue3 配置安装 pnpm 报错 已解决
java·前端·vue.js·前端框架·npm·node.js
hunzi_12 小时前
搭建商城系统
java·uni-app·php
Boilermaker19923 小时前
【Java EE】Mybatis-Plus
java·开发语言·java-ee