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

Tor*_*mod 7 spring truststore maven parent-pom spring-boot

我是Maven和Spring的新手.

该项目在我的本地测试环境中运行,但不在已部署的系统上运行.在已部署的系统上:我使用OpenSDK 10.0.1,Maven 3.5.2安装了全新的Ubuntu.我使用不同的防火墙并拥有不同的keyStore和trustStore.

Maven吐出:

组织的不可解析的父POM.[%mything%].app:useraut:0.0.1-SNAPSHOT:无法传输工件org.springframework.boot:spring-boot-starter-parent:pom:1.5.9.RELEASE from/to central(https://repo.maven.apache .org/maven2):java.lang.RuntimeException:意外错误:java.security.InvalidAlgorithmParameterException:trustAnchors参数必须为非空且'parent.relativePath'指向无本地POM @第14行,第10列 - > [帮助2]

pom snipet:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
Run Code Online (Sandbox Code Playgroud)

(没有代理定义)

我似乎可以找到解决方案的想法:错误 - trustAnchors参数必须是非空但我不知道从哪里开始配置Spring,Maven或trustStore

Tor*_*mod 8

据我所知,Ubuntu Linux for OpenJDK Java 9及更高版本的发行包存在缺陷.所以安装default-jdk可能会破坏事情.

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

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

解决办法:删除默认的JDK,安装的OpenJDK-8,删除的OpenJDK-8并重新安装默认的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就是为了这个目的.