Ps: Maven 中deploy命令报401错误的原因及解决方案
Nexus配置
接上一篇 Nexus安装:https://www.cnblogs.com/huzccc/p/17773901.html
仓库类型
仓库类型 | 说明 |
---|---|
proxy | 代理到远程仓库,默认国外,可以修改为国内阿里云代理 |
group | 存放:通过 Nexus 获取的第三方 jar 包 |
hosted | 存放:本团队其他开发人员部署到 Nexus 的 jar 包 |
还有一些仓库名称:
仓库名称 | 说明 |
---|---|
maven-central | Nexus 对 Maven 中央仓库的代理 |
maven-public | Nexus 默认创建,供开发人员下载使用的组仓库 |
maven-releasse | Nexus 默认创建,供开发人员部署自己 jar 包的宿主仓库要求 releasse 版本(生产版本) |
maven-snapshots | Nexus 默认创建,供开发人员部署自己 jar 包的宿主仓库要求 snapshots 版本(测试版本) |
maven-project-snapshots |
自定义仓库,开发人员部署自己 jar 包的宿主仓库要求 snapshots 版本(测试版本) |
maven-project-releases |
自定义仓库, 开发人员部署自己 jar 包的宿主仓库要求 releasse 版本(生产版本) |
调整代理地址
点击maven-central
进入详情:
把代理地址换为阿里云的:https://maven.aliyun.com/repository/public
新建用户和仓库
Setting.xml 及其他配置
pom.xml
<!--打包上传maven私服-->
<distributionManagement>
<repository>
<!--id的名字可以任意取,但是在setting文件中的属性<server>的ID与这里一致-->
<id>maven-releases</id>
<!--指向仓库类型为host(宿主仓库)的储存类型为Release的仓库-->
<url>http://10.13.51.30:8088/repository/maven-project-releases/</url>
</repository>
<snapshotRepository>
<id>maven-snapshots</id>
<url>http://10.13.51.30:8088/repository/maven-project-snapshots/</url>
</snapshotRepository>
</distributionManagement>
Setting.xml
<activeProfiles>
<!--需要激活 <profile>中的ID才生效-->
<activeProfile>nexus-aptiv</activeProfile>
</activeProfiles>
<servers>
<server>
<id>maven-public</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>maven-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>maven-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
<profiles>
<profile>
<id>nexus-own</id>
<!-- 远程仓库列表 -->
<repositories>
<repository>
<id>maven-public</id>
<name>Nexus Central</name>
<!-- 虚拟的URL形式,指向镜像的URL-->
<url>http://10.13.51.30:8088/repository/maven-public/</url>
<layout>default</layout>
<!-- 表示可以从这个仓库下载releases版本的构件-->
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
<repository>
<id>maven-snapshots</id>
<name>Nexus Central</name>
<!-- 虚拟的URL形式,指向镜像的URL-->
<url>http://10.13.51.30:8088/repository/maven-project-snapshots/</url>
<layout>default</layout>
<!-- 表示可以从这个仓库下载snapshot版本的构件 -->
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>maven-public</id>
<name>Nexus Central</name>
<url>http://10.13.51.30:8088/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
Ps: Maven 中deploy命令报401错误的原因及解决方案
pom 文件配置的私服仓库地址和settings.xml里配置的用户名和密码没有匹配正确,仔细检查