前言

最近jekins节点满了,需要重装一个jekins(公司的jekins使用docker安装),安装完毕后配在setting.xml配置了阿里镜像以及公司的私有仓库,但是在本地运行项目没有任何异常,一旦使用jekins部署就发现了异常Blocked mirror for repositories,从公司的私有仓库无法拉取依赖。
在这里插入图片描述
顺带提一下jekins容器setting.xml的位置 /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven/conf

//镜像
<mirror>
	<id>alimaven</id>
	<mirrorOf>central</mirrorOf>
	<name>aliyun maven</name>
	<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

jekins报错异常
在这里插入图片描述

问题发现和解决

后来登录服务器,才发现是maven版本过高(超过了3.8.1) setting.xml中的mirror不支持http造成的。
在这里插入图片描述
jekins容器中mvn命令的目录/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven/bin/

1、解决方法一

对于这个问题也很好解决重新再mirror中配置https的镜像就可以了,如果没有https,可以使用Nginx配置一个就可以,或者直接降低maven的版本。

2、解决方法二

查看那些jar下载不下来,直接从本地仓库复制到jekins的仓库即可
在这里插入图片描述
如果仓库已经挂载出来直接复制到相关的挂载仓库即可,如果没有挂载那么就是用docker cp -a复制即可
在这里插入图片描述

3、解决方法三

网络上提供了一个解决方法,在mirror中加上<blocked>true</blocked>,我试了好像依然有错误,还需继续研究
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐