spring - Maven:trustAnchors 参数必须非空且为 'parent.relativePath' @ InvalidAlgorithmParameterException @ Non-resolvable Parent POM

标签 spring maven spring-boot truststore parent-pom

我是 Maven 和 Spring 的新手。

该项目在我的本地测试环境中运行,但不在部署的系统上运行。 在已部署的系统上: 我新安装了 Ubuntu,带有 OpenSDK 10.0.1、Maven 3.5.2 我位于不同的防火墙后面,并且有不同的 keyStore 和 trustStore。

Maven 吐出:

Non-resolvable parent POM for org.[%mything%].app:useraut:0.0.1-SNAPSHOT: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.5.9.RELEASE from/to central (https://repo.maven.apache.org/maven2): java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty and 'parent.relativePath' points at no local POM @ line 14, column 10 -> [Help 2]

pom 片段:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

(未定义代理)

看来我可以找到解决方案的想法:Error - trustAnchors parameter must be non-empty但我不知道从哪里开始配置 Spring、Maven 或 trustStore

最佳答案

据我发现,Ubuntu Linux 上的 OpenJDK Java 9 及更高版本的发行包存在一个弱点。因此安装default-jdk可能会破坏一切。

引文来自:( https://bugs.launchpad.net/ubuntu/+source/openjdk-lts/+bug/1768799 ) + 其他证书更新。

请注意,重新安装default-jdk是可选的,并且可以继续使用openjdk-8。

Workaround: remove default-jdk, install openjdk-8, remove openjdk-8 and reinstall default-jdk:

sudo apt purge openjdk-default java-common

sudo apt purge default-jdk java-common

sudo dpkg --purge --force-depends ca-certificates-java

sudo apt install openjdk-8-jre

sudo apt-get install ca-certificates-java

sudo apt purge openjdk-8-jre

sudo apt install default-jdk

此后我还发现我使用的 Spring 版本在 Java 10.0.1 上运行不佳,因此回到 Java 8.x。

关于spring - Maven:trustAnchors 参数必须非空且为 'parent.relativePath' @ InvalidAlgorithmParameterException @ Non-resolvable Parent POM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50571685/

相关文章:

java - Spring 4.2 中 EhCacheManager 出现类未找到异常

java - ClassNotFoundException : org. hibernate.service.jndi.JndiException

java - 在 Spring 4 中用什么替换 MethodInvokingTimerTaskFactoryBean?

java - Maven - 如何从生成的 JAR 中排除依赖项

java - 以编程方式注册 @Component 注解的类

java - 如何向外部 Rest Api 发出 Http Post 请求?

Maven:在编译中排除java文件

java - 如何在 Spring Boot 中将 TTL 附加到 Redis 缓存中的每个条目

gradle - Wildfly无法启动可部署的War文件

bash - 将 bash 参数列表转换为带引号的单个字符串