maven deploy 经常碰到401的情况,特做总结,希望能帮助到大家。
报错信息截图如上。
对比pom文件与setting.xml文件,发现id对不上,将pom文件中的id 修改为与setting.xml文件中id一致即可。
注意:url配置要确保正确
附录1 setting.xml配置文件
<?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">
<localRepository>D:\maven-repository</localRepository>
<pluginGroups>
</pluginGroups>
<proxies>
</proxies>
<servers>
<!-- 发布Releases版的账号,ID要与distributionManagement中的Releases ID一致 -->
<server>
<id>maven-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<!-- 发布snapshot版的账号,ID要与distributionManagement中的snapshot ID一致 -->
<server>
<id>maven-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
<mirrors>
<mirror>
<id>nexus</id>
<!--*指的是访问任何仓库都使用我们的私服-->
<mirrorOf>*</mirrorOf>
<name>nexus maven</name>
<url>http://192.168.20.116:8081/repository/maven-public/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>mycof</id>
<repositories>
<!-- 私有库地址-->
<repository>
<id>nexus</id>
<url>http://192.168.20.116:8081/repository/maven-public/</url>
<releases>
<!-- true表示开启仓库发布版本下载,false表示禁止 -->
<enabled>true</enabled>
</releases>
<snapshots>
<!-- true表示开启仓库快照版本下载,false表示禁止 -->
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<!--插件库地址-->
<pluginRepository>
<id>nexus</id>
<url>http://192.168.20.116:8081/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<!-- 禁止快照版本,防止不稳定的插件影响项目构建 -->
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<!--激活profile-->
<activeProfiles>
<activeProfile>mycof</activeProfile>
</activeProfiles>
</settings>
附录2 pom.xml
<distributionManagement>
<repository>
<!--id 要和setting.xml文件中 server id 一致-->
<id>maven-releases</id>
<name>Nexus Release Repository</name>
<url>http://192.168.20.116:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<!--id 要和setting.xml文件中 server id 一致-->
<id>maven-snapshots</id>
<name>Nexus Snapshot Repository</name>
<url>http://192.168.20.116:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>