由于两次踩坑,mvn deploy都出现401错误,因此总结一下
现象:
使用mvn deploy 出现401错误:
现象:
使用mvn deploy 出现401错误:
Error deploying artifact: Failed to transfer file: http:
分析:
1.一般报401这个错,是因为没有权限,没权限的话,大部分都是因为密码错了导致,或者这个账号本身就没有传jar的权限,一般是maven目录conf的setting.xml里没有配置认证,查看maven的config路径下的settings.xml,查看后发现设置了用户名和密码。反复核对,重新部署,还是出现一样的问题。

2. 继续寻找答案,发现有两个settings.xml,maven的config路径下的settings.xml,还有一个.m2/settings.xml,属于用户自有的。

2. 继续寻找答案,发现有两个settings.xml,maven的config路径下的settings.xml,还有一个.m2/settings.xml,属于用户自有的。
而系统使用的是local的配置文件,那么文件内容我们能不能看呢,当然可以
使用mvn help:effective-settings进行查看正在起作用的是那个settings.xml的内容。结果查看以后,发些系统使用的settings.xml也没有问题,已经配置了用户名和密码。
3. 仔细查看错误日志,发现*****-client-1.0.4.jar发布失败。于是想到了版本应该是snapshot,因为server配置的id也是snapshots,不支持正式版本的部署发布。于是到应用下面更改****-client包的版本,重新mvn deploy,然后就成功了。
3. 仔细查看错误日志,发现*****-client-1.0.4.jar发布失败。于是想到了版本应该是snapshot,因为server配置的id也是snapshots,不支持正式版本的部署发布。于是到应用下面更改****-client包的版本,重新mvn deploy,然后就成功了。