spring-boot - Spring Cloud 数据流服务器
问题描述
我正在学习并使用 Spring Cloud DataFlow 做一些 POC,但遇到了一些问题:
我正在尝试启动本地数据流服务器。为了实现这一点,我刚刚创建了一个 Spring Boot 应用程序并用@EnableDataFlowServer
.
当我尝试运行时,出现以下错误:
11:54:53.307 [main] 调试 org.springframework.boot.context.logging.ClasspathLoggingApplicationListener - 应用程序无法使用类路径启动: [...] 11:54:53.395 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 6.0.13.Final 11:54:53.406 [background-preinit] 调试 org.hibernate.validator.internal.engine.resolver.TraversableResolvers - 在包含“getPersistenceUtil”的类路径上找到 javax.persistence.Persistence。假设 JPA 2 环境。尝试实例化 JPA 感知 TraversableResolver 11:54:53.408 [background-preinit] 调试 org.hibernate.validator.internal.engine.resolver.TraversableResolvers - 实例化 JPA 感知 TraversableResolver,类型为 org.hibernate.validator.internal.engine.resolver.JPATraversableResolver。 11:54:53.413 [background-preinit] 调试 org.hibernate.validator.internal.xml.config.ValidationXmlParser - 尝试为基于 XML 的验证器配置加载 META-INF/validation.xml。 11:54:53.414 [background-preinit] 调试 org.hibernate.validator.internal.xml.config.ResourceLoaderHelper - 尝试通过 TCCL 加载 META-INF/validation.xml 11:54:53.414 [background-preinit] 调试 org.hibernate.validator.internal.xml.config.ResourceLoaderHelper - 尝试通过 Hibernate Validator 的类加载器加载 META-INF/validation.xml 11:54:53.415 [background-preinit] 调试 org.hibernate.validator.internal.xml.config.ValidationXmlParser - 未找到 META-INF/validation.xml。仅使用基于注释的配置。 11:54:53.590 [background-preinit] 调试 org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator - 通过原始 TCCL 加载表达式工厂 11:54:53.596 [background-preinit] 调试 org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234:使用 org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator 作为 ValidatorFactory 范围的消息插值器。 11:54:53.597 [background-preinit] 调试 org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234:使用 org.hibernate.validator.internal.engine.resolver.JPATraversableResolver 作为 ValidatorFactory 范围的可遍历解析器。 11:54:53.597 [background-preinit] 调试 org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234:使用 org.hibernate.validator.internal.util.ExecutableParameterNameProvider 作为 ValidatorFactory 范围的参数名称提供程序。 11:54:53.597 [background-preinit] 调试 org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234:使用 org.hibernate.validator.internal.engine.DefaultClockProvider 作为 ValidatorFactory 范围的时钟提供程序。 11:54:53.597 [background-preinit] 调试 org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234:使用 org.hibernate.validator.internal.engine.scripting.DefaultScriptEvaluatorFactory 作为 ValidatorFactory 范围的脚本评估器工厂。 11:54:53.866 [main] 错误 org.springframework.boot.SpringApplication - 应用程序运行失败 java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.([Ljava/lang/Object;)V 在 org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:161) 在 org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:102) 在 org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:68) 在 org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) 在 org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) 在 org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) 在 org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127) 在 org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74) 在 org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54) 在 org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:338) 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:297) 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:1242) 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:1230) 在 com.arrobaautowired.springclouddataflowserver.SpringCloudDataflowServerApplication.main(SpringCloudDataflowServerApplication.java:12)
我正在寻求帮助,我读到这可能是 pom 的版本问题。其实我pom.xml
的是:
<-- [...] -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- DataFlow Server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dataflow-server-local-autoconfig</artifactId>
<version>1.7.0.RELEASE</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
谁能帮我?
解决方案
感谢评论中的更新。
我们过去曾经推广过 SCDF 定制模型,但由于各种原因我们决定退出它,所以文档中没有提到它。因此,我们也将它从 Spring Initializr 中删除。
至于错误,您似乎在 Boot 2.x 行,但 SCDF 仍在 1.5.x 基线上。您可以切换到 Boot 1.5.17 并重试。
此外,作为一个仅供参考,SCDF 的基线将在未来几周内切换到 Boot 2.1。
推荐阅读
- java - Java Runtime 7u51 不支持 DPI?
- python - 用 levenahtein 将大文件聚类到 3 个组
- mysql - 如何从sql中的列中仅输出某些项目
- javascript - 如何检测数组是否有空项并将其删除?
- c# - C# ObservableCollection 未以编程方式添加项目
- javascript - 在元素属性中存储/提取整数数组
- c# - 试图从 C# 获取公共 IP
- python-3.x - leetcode 14 Python 中等效的最长公共前缀 Java 子字符串
- python - 是否可以在 Pygame 中实现对象逐渐移动到给定坐标?
- go - 为什么golang抱怨无法加载路径?