跳至主要內容

代码炼金术

TenSoFlow...大约 2 分钟bug解决项目问题解决方案

代码炼金术

配置阿里云镜像JDK证书

问题描述

Maven项目下载依赖常需要配置阿里云镜像加速下载。

    <mirrors>
        <!--此配置可实现非内网环境下,使用公网阿里云仓库-->
        <mirror>
            <id>aliyunmaven</id>
            <mirrorOf>*</mirrorOf>
            <name>阿里云公共仓库</name>
            <url>https://maven.aliyun.com/repository/public</url>
        </mirror>
    </mirrors>

Maven访问阿里云仓库使用的是 HTTPS 协议。相比 HTTP多了一个S(Secure),其核心就是 SSL/TLS 加密通信。当Maven请求下载Jar包时,阿里云服务器会先发回一张电子身份证(即 SSL 证书)。我们的JDK/Maven收到证书后,它不会盲目相信。它会去自己的信任名单(也就是在JDK安装路径下的cacerts文件夹中)里比对,看这张身份证是不是由权威机构颁发的。而我们的cacerts文件夹中没有此证书因此下载失败。一般和JDK版本有关,高版本JDK中的cacerts文件夹可能已经自带。如此解决方案就是从官网中下载证书并把证书放入到我们JDK安装路径中的cacerts文件夹中。

解决方案

  1. 打开阿里云Maven网址 https://maven.aliyun.com/open in new window

  2. 打开后在浏览器网址左侧有一个图标,点击此图标

  1. 选择 --> 连接是安全的
  1. 选择 --> 证书有效
  1. 选择 --> 详细信息 导出
  1. 将下载好的文件放入指定文件夹如D:\TenSoFlow\Code\Java\JDKCer

  2. 以管理员身份运行CMD

# "D:\TenSoFlow\Code\Java\JDK1.8.0_201\jre\lib\security\cacerts" 是你JDK路径中的证书路径
# "D:\TenSoFlow\Code\Java\JDKCer\aliyun.crt" 是你放置证书的路径

keytool -import -alias aliyun_maven -keystore "D:\TenSoFlow\Code\Java\JDK1.8.0_201\jre\lib\security\cacerts" -file "D:\TenSoFlow\Code\Java\JDKCer\aliyun.crt"
  1. 输入命令后根据提示进行交互

输入口令:输入changeit (注意:输入时屏幕不会显示任何字符,输完直接按回车)

确认信任:屏幕会显示证书信息,最后一行问你 是否信任此证书,此时输入 y 然后按回车。

看到成功提示 --> 证书已添加到密钥库中,则说明操作成功

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.8