Maven配置私有库

article/2025/9/22 16:43:30

Maven配置私有库

        • 一、仓库
        • 二、pom.xml
        • 三、settings.xml文件

一、仓库

仓库类型:
本地仓库、远程中央仓库、公司自己搭建的私有仓库

寻找jar的基本优先级顺序:
本地仓库 > settings.xml的profile的仓库 > pom.xml的profile的仓库 >pom.xml的仓库 > 中央仓库

设置仓库的方式有两种,一种是在项目最顶级POM.xml中设置,另一种是在settings.xml中设置。

在POM.xml中设置:

  <repositories><repository><id>nexus</id><name>Team Nexus Repository</name><url>http://192.168.100.100:8181/nexus/content/groups/public</url></repository><repository><id>thirdparty</id><name>Nexus thirdparty</name><url>http://192.168.100.100:8181/nexus/content/repositories/thirdparty/</url></repository></repositories><pluginRepositories><pluginRepository><id>nexus</id><name>Team Nexus Repository</name><url>http://192.168.100.100:8181/nexus/content/groups/public</url></pluginRepository></pluginRepositories>

settings.xml中设定:

<?xml version="1.0" encoding="UTF-8"?>
<settingsxmlns="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 http://maven.apache.org/xsd/settings-1.0.0.xsd"><localRepository>/Users/本地仓库地址/Documents/repo</localRepository><pluginGroups></pluginGroups><proxies></proxies><servers><!--发布到仓库中的配置,id要和distributionrepository保持一致服务器要打包上传到私服时,设置私服的鉴权信息,否和报错 Return code is: 401, ReasonPhrase: Unauthorized--><server><id>release</id><username>deployment</username><password>123456</password></server><server><id>snapshot</id><username>deployment</username><password>123456</password></server></servers><mirrors><!--  设置多个mirrors镜像,镜像只会执行第一个位置mirror。--><!--  配置的多个mirror可以都放着不影响,选取一个镜像下载比较快的放在第一个就行。比如你设置使用自己公司的私有仓库--><!--只有当前一个mirror无法连接的时候,才会去找后一个,类似于备份和容灾。所以当第一个mirror中不存在a.jar的时候,并不会去第二个mirror中查找,甚至于,maven根本不会去其他的mirror地址查询--><mirror><!--      当有id为B,A,C的顺序的mirror在mirrors节点中,maven会根据字母排序来指定第一个,所以不管怎么排列,一定会找到A这个mirror来进行查找,当A无法连接,出现意外的情况下,才会去B查询--><id>aliyun</id><name>阿里云仓库地址</name><url>http://maven.aliyun.com/nexus/content/groups/public</url><!--覆盖了Maven自带的central--><mirrorOf>central</mirrorOf></mirror></mirrors><profiles><!-- 全局JDK1.8配置 --><profile><id>jdk1.8</id><activation><activeByDefault>true</activeByDefault><jdk>1.8</jdk></activation><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion></properties></profile><!-- 阿里云配置: 提高国内的jar包下载速度 --><profile><id>aliyun-Repository</id><repositories><repository><id>aliyun</id><url>http://maven.aliyun.com/nexus/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile><profile><id>suwell-Repository</id><repositories><repository><id>first</id><name>Repository first</name><url>http://192.168.100.100:8181/nexus/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile><profile><id>gomain-Repository</id><repositories><repository><id>second</id><name>Repository second</name><url>http://192.168.100.100:8081/nexus/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile></profiles>
激活仓库配置,拉取依赖会在这些仓库中逐个去找<activeProfiles><activeProfile>jdk1.8</activeProfile><activeProfile>first-Repository</activeProfile><activeProfile>aliyun-Repository</activeProfile><activeProfile>second-Repository</activeProfile></activeProfiles>
</settings>

二、pom.xml

pom.xml 配置文件主要分为两类

  • 用于配置自己的实际依赖
  • 用于声明一些版本和仓库便于版本管理和发布。

pom配置是可以被继承的,父级依赖一般是做版本控制以及指定私有仓库的。
在这里插入图片描述
在这里插入图片描述

三、settings.xml文件

settings 主要由mirrors、servers 和profiles 三部分组成。

1、mirrors
mirrors 主要作用是一个镜像代理,便于内外网厂库切换,或者单独配置内网使用。

如果pom中的repository的id能和mirrorOf的值关联上,那么url以mirror的为准,否则以repository中自己的url为准。

<mirror><id>test-nexus</id><mirrorOf>*</mirrorOf><name>sugon local repository</name><url>http://172.22.5.34:9996/repository/sugoncloud-public/</url></mirror>

mirrorof 有三种值:

  • *代表 所有仓库请求都走这个配置的镜像代理
  • central 默认是maven 的仓库

2、servers

<server><id>nexus-releases</id><username>deployment</username><password>deployment123</password></server>

它关联pom中配置的私有仓库id, 在推送依赖包的时候根据id进行认证。

3、profiles
配置全局私用仓库。

注意:
如果只配置mirrors 是不能拉取父pom文件的,如果需要拉取父pom文件那么需要配置repository。

参考文章:
[1] Maven私有仓库nexus配置
[2] Java Maven settings.xml中私有仓库配置详解


http://chatgpt.dhexx.cn/article/EDyBoXQ9.shtml

相关文章

maven配置阿里云仓库

方式一&#xff1a;全局配置 可以添加阿里云的镜像到maven的setting.xml配置中&#xff0c;这样就不需要每次在pom中&#xff0c;添加镜像仓库的配置&#xff0c;在mirrors节点下面添加子节点&#xff1a; <mirror><id>nexus-aliyun</id><mirrorOf>ce…

在IDEA中进行Maven配置

1、下载maven&#xff0c;解压之后&#xff0c;放在一个不含中文和空格的目录中即可&#xff0c;无需安装&#xff0c;即可使用。 2、配置MAVEN_HOME&#xff0c;再添加到环境变量Path。注意&#xff1a;设置MAVEN_HOME之前&#xff0c;需要先设置JAVA_HOME。 3、测试maven是否…

idea修改默认maven配置

idea修改默认maven配置 方法一 &#xff08;不推荐&#xff09;打开project.default.xml文件&#xff0c;在其中加入如下几行配置。代码如下保存修改之后新建一个maven项目查看效果 方法二 新增Projects Settings 方法一 &#xff08;不推荐&#xff09; 需要找到C盘中你的ide…

IDEA中设置默认Maven配置

一、每次打开项目时修改maven配置&#xff08;默认的maven地址可能不是我们想要的&#xff0c;可以通过下面方法修改&#xff09; 二、配置默认的地址 第一种方法太麻烦&#xff0c;每次打开项目都需要配置maven&#xff0c;我们可以通过配置默认的地址&#xff0c;这样打开修项…

Maven配置远程仓库

当构建一个Maven项目时&#xff0c;首先检查pom.xml文件以确定依赖包的下载位置&#xff0c;执行顺序如下&#xff1a; 1、从本地资源库中查找并获得依赖包&#xff0c;如果没有&#xff0c;执行第2步。 2、从Maven默认中央仓库中查找并获得依赖包&#xff08;http://repo1.m…

maven配置环境变量

Maven 是一个基于 Java 的工具&#xff0c;所以需要安装 JDK这是前提。 接下来记录下maven配置环境变量 1.maven的安装 下载地址&#xff1a;https://maven.apache.org/download.cgi或者你也可以点击archives选择其它版本&#xff0c;具体操作如下&#xff1a; 点击 binaries …

IDEA设置默认的maven配置

IDEA设置默认的maven配置 一、每次打开修项目时修改配置 每次打开新项目&#xff0c;默认的maven地址可能不是我们想要的&#xff0c;可以通过下面方法修改&#xff1a; 二、配置默认的地址 第一种方法太麻烦&#xff0c;每次都需要配置&#xff0c;我们可以通过配置默认的地…

Maven配置教程

Maven配置 Maven项目对象模型(POM)&#xff0c;可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的软件项目管理工具。 Maven 的配置却让一些初学者望而却步&#xff0c;这里我就把Maven的详细配置过程写下&#xff0c;希望能对你有所帮助。 文章目录 Maven配置M…

maven详细配置教程

以后会更好 文章目录 ①.maven下载②.maven配置②①.maven环境变量配置②①.maven配置文件 ③.IDEA配置maven④.Eclipse配置maven ①.maven下载 maven下载官网&#xff1a;点击 点击进去官网&#xff0c;点击Download 往下拉找到这个 点击下载&#xff0c;下载好后&#xf…

maven安装及配置

maven安装及配置&#xff08;详细版&#xff09; 1.下载&#xff1a; 可以从官方下载&#xff0c;下载页面&#xff1a;http://maven.apache.org/download.cgi 2.安装&#xff1a; maven压缩包解压到一个没有中文&#xff0c;空格或其他特殊字符的文件夹内即可使用。 3.…

Maven环境配置

文章目录 一、官网下载maven二、配置环境变量三、settings.xml中配置阿里云镜像四、settings.xml中配置本地仓库五、创建一个MavenWeb项目六、创建一个普通Maven项目七、pom.xml八、总结 一、官网下载maven maven官网点此进入 任选一个下载&#xff0c;下载完成以后解压到一个…

Maven安装与配置(详细步骤)

本篇博文记录了Maven环境安装与配置的详细步骤&#xff0c;旨在为将来再次配置Maven时提供指导方法。 一、下载Maven并解压 1. Maven官网下载地址&#xff1a;http://maven.apache.org/download.cgi 截止目前&#xff0c;Maven的最新版为3.6.3&#xff0c;如无特殊需要&…

Maven配置

Maven配置 本文将主要讲述Maven的环境配置以及本地仓库配置、阿里镜像和idea配置。 一、安装Maven核心 在使用Maven之前需要安装Maven的核心程序以及本地仓库的必要设置&#xff0c;大致流程如下&#xff1a; 检查 JAVA_HOME 环境变量解压Maven核心程序配置Maven的环境变量…

MAVEN的安装与配置教程(超详细版)

前言&#xff1a;在MAVEN的安装和配置开始之前&#xff0c;先给大家介绍一下MAVEN。 1.MAVEN的认识 1.1什么是MAVEN? Maven是一个项目构建及管理工具&#xff0c;开发团队几乎不用花多少时间就能够自动完成工程的基础构建配置&#xff0c; Maven 使用了一个标准的目录结构在不…

maven配置详解

下载地址&#xff1a;Maven – Download Apache Maven&#xff0c; 添加环境变量&#xff1a;MAVEN_HOME 一、配置文件 maven的配置文件主要有 settings.xml 和pom.xml 两个文件。 1.其中在maven安装目录&#xff0c;例如apache-maven-3.8.1\conf目录下的settings.xml 文件是…

Maven配置(IDEA配置)

目录 Maven配置IDEA配置配置Tomcat聚合开发 1、Maven配置 &#x1f373;、下载maven 官方&#xff1a;http://maven.apache.org/download.html &#x1f373;、解压即用&#xff0c;直接解压到指定目录 &#x1f373;、配置环境变量跟Java一样 主要配置M_HOME环境变量&#…

Maven安装和配置详细教程

一、安装Maven 1.官网下载 Binary是可执行版本&#xff0c;已经编译好可以直接使用。 Source是源代码版本&#xff0c;需要自己编译成可执行软件才可使用。 tar.gz和zip两种压缩格式,其实这两个压缩文件里面包含的内容是同样的,只是压缩格式不同 tar.gz格式的文件比zip文件小很…

数据库左连接和右连接有什么区别!

大家好我是艺霏&#xff0c;今天和大家谈一下数据库左连接和右连接有什么区别&#xff1f; 数据库中的左连接和右连接的区别可以概括为一句话来表示即左连接where只影响右表&#xff0c;右连接where只影响到左表 image.png 在这里推荐一个MySQL方面的教程 数据库中的左连接(…

左右连接和内外连接

左连接 select 列1,列2,列N from tableA left join tableB on tableA.列 tableB.列(正常是一个外键列) [此处表连接成一张大表&#xff0c;完全当成一张普通表看] where,having,group by …照常写。 右连接 select 列1,列2,列N from tableA right join tableB on ta…

秋招被问mysql左连接和右连接的区别?

hello我是辰兮&#xff0c;最近项目常常和mysql打交道&#xff0c;让我想起来我去年秋招的一到面试题&#xff0c;整理分享出来&#xff0c;菜是原罪&#xff0c;不过一起进步吧&#xff01; 去年秋招面试官就问我&#xff1a;数据库左连接和右连接有什么区别&#xff1f; 基…