Idea创建maven工程,配置多仓库

2022-11-10 08:59:08 浏览数 (1)

IDEA中查看maven信息的方式是:

打开File -> Settings->搜索maven即可;

在这里插入图片描述在这里插入图片描述
默认的maven仓库

使用Idea创建创建maven工程,默认使用的maven安装目录下的配置文件;如果需要多仓库,需要修改settings,xml或新建一个settings.xml文件,在idea中指定即可;

需要说明一下,直接在mirrors中添加mirro属性是不行的;

对于需要用户名密码的私服,需要在server中配置

先上重点

核心配置文件如下:

maven配置多仓库的settings.xml

代码语言:html复制
<?xml version="1.0" encoding="UTF-8"?>

<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 http://maven.apache.org/xsd/settings-1.0.0.xsd">
 
  <servers>
    <server>
        #私有仓库配置用户名和密码
        <id>self-repo</id>
        <username>name</username>
        <password>pwd</password>
    </server>
  </servers>

 
  <mirrors>
  </mirrors>

 
  <profiles>

    <profile> 
	  <id>aliyun</id>  
	  <repositories> 
	    <repository> 
	      <id>aliyun</id>  
	      <url>https://maven.***.com/nexus/content/groups/public/</url>  
	      <releases> 
	        <enabled>true</enabled> 
	      </releases>  
	      <snapshots> 
	        <enabled>true</enabled>  
	        <updatePolicy>always</updatePolicy> 
	      </snapshots> 
	    </repository> 
	  </repositories> 
	</profile>  
	<profile> 
	  <id>maven-central</id>  
	  <repositories> 
	    <repository> 
	      <id>maven-central</id>  
	      <url>https://central.maven.org/maven2/</url>  
	      <releases> 
	        <enabled>true</enabled> 
	      </releases>  
	      <snapshots> 
	        <enabled>true</enabled>  
	        <updatePolicy>always</updatePolicy> 
	      </snapshots> 
	    </repository> 
	  </repositories> 
	</profile> 

    <profile>
        <id>self-repo</id>
        <repositories>
        <repository>
          <id>self-repo</id>
          <url>https://*****/nexus/content/groups/public/</url>
          <releases> 
	        <enabled>true</enabled> 
	      </releases>  
	      <snapshots> 
	        <enabled>true</enabled>   #false:不从中央仓库下载快照true:从中央仓库下载快照
	        <updatePolicy>always</updatePolicy>   #更新策略:never:从不检查 always:每次构建都检查 interval:X 每隔X分钟检查一次
	      </snapshots> 
        </repository>
      </repositories>

    </profile>

  </profiles>
  
  <activeProfiles>
    <activeProfile>aliyun</activeProfile>
    <activeProfile>maven-central</activeProfile>
    <activeProfile>self-repo</activeProfile>
  </activeProfiles>

</settings>
文件说明:

文件主要内容有

servers 设置私服仓库的用户密码,如果需要的话 profiles 仓库列表,所有参考都在这里面,注意每个内容要一定要设置id属性; activeProfiles 设置激活哪个仓库;

建议将settings放置到idea中推荐的目录下,直接在idea的maven配置中勾选Override选项

在这里插入图片描述在这里插入图片描述

可能的问题:

  • 出现http://0.0.0.0
在这里插入图片描述在这里插入图片描述
代码语言:txt复制
<mirror> 
    <id>alimaven</id> 
    <name>aliyun maven</name> 
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url> 
    <mirrorOf>central</mirrorOf> 
  </mirror> 
  • 关于updatePolicy更新策略

maven构建项目时,如果本地仓库有,则直接使用本地仓库的包。这时就可以设置私服仓库的更新策略让maven更新本地仓库的jar包。在snapshot标签中使用updatePolicy指定更新策略 可使用always、daily、interval、never。

0 人点赞