在默认情况下maven使用的是中央仓库,这是为了让maven能开箱即用,但仅仅这么做明显是错误的,这会造成大量的时间及带宽的浪费。现在我们就要配置Maven来使用本地的Nexus,以节省时间和带宽资源。
首先,maven的安装目录,打开文件夹conf——>settings.xml 。
maven提供了profile来配置仓库信息,如下所示:
<profile>
<id>dev</id>
<repositories>
<repository>
<id>local-nexus</id>
<url>http://127.0.0.1:8080/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
激活profile
<activeProfiles>
<activeProfile>dev</activeProfile>
</activeProfiles>
配置镜像
<mirrors>
<!-- 这里配置mirrorOf的值为*,代表maven的所有访问请求都会指向到Nexus仓库组。-->
<mirror>
<id>nexus</id>
<url>http://127.0.0.1:8080/nexus/content/groups/public/</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
在setting.xml文件中添加认证信息
<servers>
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
最后一步修改项目的pom文件
<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>my nexus releases repository</name>
<url>http://127.0.0.1:8080/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<name>my nexus snapshots repository</name>
<url>http://127.0.0.1:8080/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
上述配置完成之后windows 系统下进入cmd 控制台输入命令mvn clean deploy
看到build success 则为成功。