-Dmaven.multiModuleProjectDirectory=$MAVEN_HOME
-Dmaven.wagon.http.ssl.insecure=true
-Dmaven.wagon.http.ssl.allowall=true
-Dmaven.wagon.http.ssl.ignore.validity.dates=true
报错信息
Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty -> [Help 1]
解决方案 通常与 Java 安全配置有关,特别是在尝试访问 HTTPS 资源(例如 Maven 中央仓库)时。这个错误提示你的 Java 环境中的信任库(trust store)没有正确设置或为空,这意味着 Java 无法验证 SSL 证书的有效性。
以下是一些可能的解决方案:
-
检查 JAVA_HOME 和 JRE 设置:确保你的
JAVA_HOME
和JRE
设置指向一个有效的 JDK/JRE 安装目录,并且该目录下的lib/security/cacerts
文件存在并且不是空的。 -
更新或修复 cacerts 文件:
- 找到你的 JDK 的
cacerts
文件,通常位于$JAVA_HOME/jre/lib/security/cacerts
或$JAVA_HOME/lib/security/cacerts
。 - 如果文件丢失或者损坏,可以从其他相同版本的 JDK 安装中复制一份,或者使用 keytool 工具来重新生成它。你可以使用如下命令列出当前的 CA 证书来检查其状态:
keytool -list -v -keystore $JAVA_HOME/jre/lib/security/cacerts
。(默认密码通常是 "changeit")
- 找到你的 JDK 的
-
Maven 配置:如果你是在使用 Maven 构建项目时遇到这个问题,可以尝试在 Maven 的
settings.xml
文件中配置代理或镜像,以避免直接访问可能导致问题的 HTTPS 资源。 -
系统时间:虽然不太常见,但系统时间不准确也可能导致 SSL 证书验证失败。请确保你的系统时间设置是正确的。当前时间为2025年3月11日星期二13时39分,请根据此信息校对你的系统时间。
-
使用
-Dmaven.wagon.http.ssl.insecure=true
参数:作为临时解决办法,可以在运行 Maven 命令时添加这个参数以跳过 SSL 检查,但这会降低安全性,因此不推荐长期使用。
-Dmaven.wagon.http.ssl.insecure=true
-Dmaven.wagon.http.ssl.allowall=true
-Dmaven.wagon.http.ssl.ignore.validity.dates=true
D:\software\Java\java-se-8u41-ri\bin\java.exe
-Dvisualvm.id=15640679928100
-Dmaven.multiModuleProjectDirectory=D:\works\azure\temp\platform-xxl-job-v2
-Djansi.passthrough=true
-Dmaven.multiModuleProjectDirectory=$MAVEN_HOME
-Dmaven.wagon.http.ssl.insecure=true
-Dmaven.wagon.http.ssl.allowall=true
-Dmaven.wagon.http.ssl.ignore.validity.dates=true
-Dmaven.home=D:\software\apache-maven-3.6.0
-Dclassworlds.conf=D:\software\apache-maven-3.6.0\bin\m2.conf -Dmaven.ext.class.path=D:\software\Java\ideaIC-2024.2.4.win\plugins\maven\lib\maven-event-listener.jar -javaagent:D:\software\Java\ideaIC-2024.2.4.win\lib\idea_rt.jar=65236:D:\software\Java\ideaIC-2024.2.4.win\bin -Dfile.encoding=UTF-8
-classpath D:\software\apache-maven-3.6.0\boot\plexus-classworlds-2.5.2.jar org.codehaus.classworlds.Launcher -Didea.version=2024.2.4
--errors
--fail-fast
-s C:\Users\mamarion\.m2\settings.xml
-Dmaven.repo.local=D:\software\repos
-DskipTests=true
compile