Spring Cloud Data Flow 本地服务器 Jar - java.lang.NoClassDefFoundError

问题描述

最近我将我的 JDK 从 8 (1.8_275) 更新到了 11 (openjdk version "11.0.9.1" 2020-11-04)

当我尝试使用

启动SCDF本地服务器时
java -jar spring-cloud-dataflow-server-local-1.7.4.RELEASE.jar

我使用 JDK 8 时完全没有问题。但是使用 JDK 11 时,我遇到了以下异常:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name
'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: 
Invocation of init method Failed; nested exception is java.lang.NoClassDefFoundError: 
javax/xml/bind/JAXBException

我看了herehere。甚至尝试(使用 --add-modules java.xml.bind):

java -jar spring-cloud-dataflow-server-local-1.7.4.RELEASE.jar --add-modules java.xml.bind

导致与上述相同的错误

我明白,根据 this,它在 JDK 11 中被删除了。但是我在这里遗漏了什么?我的意思是我怎样才能让它工作或者有什么解决办法?

解决方法

您使用的是古老且已弃用的 SCDF 版本。 SCDF 的 1.x 版本也达到了 EOL/EOGS。特别是,您使用的版本已超过 2 年。

请升级到 2.x 版本。最新的 GA 是 2.7.0。

查看 getting-started 指南和 release blog 了解更多详情。

,

您可以尝试在没有互联网连接的情况下运行。他们没有正确更新预先构建的 jars,它也必须在防火墙后面。也试试 kubernetes。