Maven 私服 unable to find valid certification path to requested target 错误

这篇具有很好参考价值的文章主要介绍了Maven 私服 unable to find valid certification path to requested target 错误。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

你遇到的错误信息 “sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target” 表明在 SSL/TLS 握手过程中,证书路径验证失败。这通常是由于缺少或不受信任的证书导致的,Maven 无法与远程仓库建立安全连接。

为了解决这个问题,你可以尝试以下步骤:

  1. 导入证书:从远程仓库获取证书,并将其导入到本地的 Java 密钥库中。这样可以让 Maven 信任证书并建立安全连接。你可以使用随 Java 开发工具包 (JDK) 提供的 keytool 命令行工具导入证书。以下是示例命令:

    keytool -import -alias my-cert -keystore <密钥库路径> -file <证书路径>
    

    eg

    keytool -import -alias my-cert -keystore C:\Java\jdk1.8.0_271\jre\lib\security\cacerts -file C:\Users\12892\Desktop\xxx
    

    <密钥库路径> 替换为你的 Java 密钥库文件的路径(例如 cacerts),将 <证书路径> 替换为证书文件的路径。你可能需要提供密钥库的密码,默认情况下通常为 changeit

亲测,使用该步骤即可解决问题

  1. 在 Maven 设置中显式信任证书:在你的 settings.xml 文件中添加以下配置,以显式信任远程仓库的证书:

    <settings>
      ...
      <profiles>
        <profile>
          <id>trust-repository-certificate</id>
          <activation>
            <activeByDefault>true</activeByDefault>
          </activation>
          <repositories>
            <repository>
              <id>my-repository</id>
              <url>https://example.com/repository</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>true</enabled>
              </snapshots>
              <pluginSnapshots>
                <enabled>true</enabled>
              </pluginSnapshots>
              <trustCertificates>true</trustCertificates>
              <certificatePath>/证书路径</certificatePath>
            </repository>
          </repositories>
        </profile>
      </profiles>
      ...
    </settings>
    

    my-repositoryhttps://example.com/repository/证书路径 替换为你的仓库和证书的相应值。

  2. 禁用证书验证(不推荐):作为最后的手段,你可以在 Maven 设置中禁用证书验证。然而,这不推荐使用,因为它会降低安全性并暴露给潜在的安全风险。要禁用证书验证,在 settings.xml 文件中添加以下配置:

    <settings>
      ...
      <ssl>
        <trustAll>true</trustAll>
      </ssl>
      ...
    </settings>
    

    通过将 <trustAll> 设置为 true,Maven 将信任所有证书,包括自签名或无效证书。再次强调,这在生产环境中不推荐使用。文章来源地址https://www.toymoban.com/news/detail-481253.html

到了这里,关于Maven 私服 unable to find valid certification path to requested target 错误的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • RuntimeError: Unable to find a valid cuDNN algorithm to run convolution

    使用yolov5l模型训练时出现报错,但是昨天使用yolov5s模型时是可以正常训练的。 发生报错的原因是gpu内存占用过高,terminal输入nvidia-smi查看gpu的使用情况。   我们需要把bach_size调小,一般建议是8的倍数,内存不够用时尽量调低,此处我设置成了16。 结果运行正常。 使用yol

    2024年02月11日
    浏览(30)
  • Unable to connect to the server: x509: certificate has expired or is not yet valid

    手动更新所有证书,执行命令 更新用户配置 用更新后的admin.conf替换/root/.kube/config文件 k8s解决证书过期官方文档:https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/ 帮助文档: https://www.cnblogs.com/00986014w/p/13095628.html

    2024年02月04日
    浏览(33)
  • 【bug解决】RuntimeError: Unable to find a valid cuDNN algorithm to run convolution

    进行深度学习的算法模型训练的时候,终端报错: 产生报错的原因可能有两种: 1.模型训练的环境中cudnn,CUDA的版本号不匹配 解决办法:安装对应的cudnn,以及cuda,找到对应的torch框架,进行安装 2.其实问题更加简单,是模型的训练的batch-size训练过大了,调整更小,就可以了

    2024年02月11日
    浏览(37)
  • K8S异常之Unable to connect to the server: x509: certificate has expired or is not yet valid

    2.1 处理步骤 2.2 处理步骤详细情况 如上,发现很多证书都是 invalid 的状态,接着更新证书: 如下,更新证书后,证书过期时间已经更新为 365d 3.1 再次查看kubectl get node,发现有新的错误: error: You must be logged in to the server (Unauthorized) 3.2 上述错误解决方案 备份配置文件 cp -rp

    2024年02月03日
    浏览(34)
  • can‘t find model ‘zh_core_web_sm‘. It doesn‘t seem to be a python package or a valid path to a data

    成功解决[E050] Can’t find model ‘en_core_web_sm’. It doesn’t seem to be a Python package or a valid path to a data directory. 直接上解决方案 豆瓣源安装spacy包 zh_core_web_sm en_core_web_sm spacy中文模型官网 spacy官网 注意根据对应版本下载 pip install + whl文件地址 接下来就可以使用啦,给出两个小栗子

    2024年02月07日
    浏览(32)
  • Git SSL certificate problem: unable to get local issuer certificate

    错误:     Push failed             Unable to access \\\'https://github.com/ttsin/gitTest.git/\\\': SSL certificate problem: unable to get local issuer certificate 你在远程访问GitHub时,出现 这个错误通常表示Git无法验证GitHub的SSL证书,因为缺少本地颁发机构(CA)的根证书。 方法一: 1. 更新Git的CA证书:

    2024年02月14日
    浏览(33)
  • SSL certificate problem: unable to get local issuer certificate解决办法

    在github上用https克隆代码时报了如下错误 这是由于当你通过HTTPS访问Git远程仓库的时候,如果服务器上的SSL证书未经过第三方机构认证,git就会报错。原因是因为未知的没有签署过的证书意味着可能存在很大的风险。解决办法就是通过下面的命令将git中的sslverify关掉: 然后在

    2024年02月11日
    浏览(32)
  • Mac下certificate verify failed: unable to get local issuer certificate

    出现这个问题,可以安装证书 在finder中查找 Install Certificates.command 找到后双击,或者使用其他终端打开 安装完即可

    2024年02月15日
    浏览(38)
  • 已解决unable to access ‘https://github.com/**‘: SSL certificate problem: unable to get

    错误:unable to access \\\'https://github.com/\\\': SSL certificate problem: unable to get local issuer certificate 这个问题是由于没有配置信任的服务器HTTPS验证。默认,curl被设为不信任任何CAS,就是说,它不信任任何服务器验证。 只需要执行下面命令就可以解决:  

    2024年03月19日
    浏览(42)
  • How to disable certificate validations in the Java HTTP Client

    Java 11 introduced the HTTP Client, an API that made it easier to send HTTP requests with vanilla Java. By default, it throws an exception if there are certificate path or hostname verification errors in the request. Let’s see how to bypass certificate validations for cases where this is really necessary. To ignore both certificate path and hostname verif

    2024年01月19日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包