maven编译过程中,下载不了项目依赖的pom文件和jar包。在确认代理已经配置正确的情况下仍然出现Server returned HTTP response code: 407 for URL
的错误。
原因分析
MAVEN 407 Authentication Exception,一般都出现在有墙的公司环境中,就无论怎么修改.m2/setting.xml
和MAVEN_HOME/conf/setting.xml
的proxy和mirror,都出现
proxyInfo ProxyInfo{host='', userName='null', port=, type='http', nonProxyHosts='null'}
在stackoverflow上搜了很多也没啥好的原因分析和解决办法,只能想办法绕过了。
解决办法
一、清除maven的代理,尝试编译。
二、手动下载
wget <filename>
如果wget
命令下载不了,请确认代理是否正确配置。
如果可以下载,为了解决要下载的文件太多并且移动到maven仓库的很麻烦,我写了一个脚本放在我的github上,自动读取你要下的所有文件,用wget
命令下载完并移动到maven仓库。
逻辑很简单,使用的话需要修改脚本文件的中的maven配置(如果是阿里云镜像的话不需要修改)。水平有限,代码写的很死,有需要的可以自行修改。具体使用步骤可以参考github上的README文件。
有问题欢迎提issue修改,有用的话点个star~
附阿里云镜像
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central</url>
</mirror>