前言
配置了一个私有仓库地址,下载依赖的时候有警告,依赖下载不下来,仔细看地址有问题,编程0.0.0.0了:
Downloading from maven-default-http-blocker: http://0.0.0.0/com/jeremytsai/jeremy-basic-common/1.0.0/maven-metadata.xml
[WARNING] Could not transfer metadata com.jeremytsai:jeremy-basic-common:1.0.0/maven-metadata.xml from/to maven-default-http-blocker (http://0.0.0.0/): transfer failed for http://0.0.0.0/com/jeremytsai/jeremy-basic-common/1.0.0/maven-metadata.xml
搜索了一下,发现从3.8.1
版本开始,maven禁止了从http协议的仓库地址下载依赖。
解决办法
通过配置mirror
来突破限制。
<mirror>
<id>maven-default-http-blocker</id>
<mirrorOf>blocker</mirrorOf>
<name>用于突破maven-3.8.1版本以后默认禁用http仓库的限制</name>
<url>http://0.0.0.0/</url>
</mirror>
以可以切换为旧版本的maven,就没有该限制。
其他解决办法
- 降低Maven版本
- 将私有仓库升级为https
- 通过配置mirror解决
不同于上文,maven限制的是repository不能使用http,没有限制mirror不能使用,可以将自己的私有仓库写在mirror中而不是repository。该方法同样简单。<mirror> <id>jeremy-maven</id> <mirrorOf>*</mirrorOf> <name>Jeremy的公共仓库</name> <url>http://1.2.3.4/repository/public</url> </mirror>
引用
若文章有误,或你有什么见解,欢迎留言指正和交流。
原创不易,若有所帮助,欢迎点赞、收藏。