解决 javassl PKIX path building failed: SunCertPathBuilderExcep

yumo6665个月前 (06-10)技术文章38

天公司邮箱服务器,更改必须TLS安全认证,原来java mail 邮件发送出现异常:

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExcep

该异常是客户端对服务器的证书认证的时候出错了,解决方案把服务器证书加到信任证书库里面

把该证书导入java中的cacerts证书库里

假设jdk安装目录:C:\Program Files\Java\jdk1.7.0_80\jre\lib\security

cmd命令行跳到这个目录

执行keytool -import -alias cacerts -keystore cacerts -file d:\software\CA.cer

此时命令行会提示你输入cacerts证书库的密码,

敲入changeit,这是java中cacerts证书库的默认密码

导入后用-list查看。

重启服务后,发送邮件正常。

ps:tomcat、junit运行时会从默认路径加载cacerts文件,如果main方法执行可以通过环境变量指定信任证书库路径。

相关文章

在 Windows 11 上验证 Python 安装的多种方法

Python 是一种广泛使用的编程语言,用于开发各种应用程序,甚至用于开发人工智能、机器学习和数据分析等。因此,如果你是编程新手,并且在 Windows 11 或 10 电脑上安装了 Python,但...

SpringBoot与Jasypt整合,实现数据库字段自动加密解密功能

使用Jasypt可以显著提升应用程序的数据安全性,简化加密操作,并提供灵活的配置选项。不仅有助于满足各种法规要求,还能提高开发效率和系统的整体稳定性。Jasypt的好处保护敏感信息用户数据: 加密存储...

在PyCharm中使用pyenv指定的Python:配置指南

在Python开发中,我们常常需要管理多个Python版本,以适应不同项目的需求。`pyenv` 是一个强大的工具,能够帮助我们轻松管理Python版本,而PyCharm则是一款广泛使用的Python...

蓝易云 - Linux 基础入门 + Java项目部署

Linux 基础入门 + Java 项目部署一、Linux 基础入门1.1 什么是LinuxLinux是一种开源的类Unix操作系统,最初由Linus Torvalds于1991年发布。Linux因其...

GraalVM 的安装与配置:从零开始,手把手教你玩转它!

各位朋友,你是不是已经迫不及待地想把这个性能怪兽请到你的电脑里,让你的 Java 应用秒级启动,甚至尝试用它运行 Python 和 JavaScript?别急,万事开头难,但只要跟着我的步骤,你会发现...

Java代码保护方法之四:JVMTI实现Java源码保护

大家好,我叫小丁,一名小小程序员。今天继续介绍Java代码保护的第四种方案:JVMTI。采用ClassFinal和自定义类加载器这两种策略来保护Java代码时,它们面临的一个共同的主要挑战在于:加解密...