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
<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。