Spring Integration DSL不推荐使用类

问题描述 投票:1回答:1

我在这个版本中使用了spring integration和java-dsl依赖项。

  • spring-integration-jdbc- 5.0.0M6
  • spring-integration-ws- 5.0.0M6
  • spring-integration-http- 5.0.0M6
  • spring-integration-jmx- 5.0.0M6
  • spring-integration-core- 5.0.0M6
  • spring-integration-java-dsl- 1.2.2 RELEASE

由于新的JdbcMetadataStore,我必须使用5.0.0M6版本。

上周,我使用了spring集成4.3.11RELEASE和java-dsl-1.2.2RELEASE,我的应用程序工作正常。

升级过程后,抛出此运行时异常:

Caused by: java.lang.NoClassDefFoundError: org/springframework/integration/expression/IntegrationEvaluationContextAware
at org.springframework.integration.dsl.config.IntegrationFlowBeanPostProcessor.registerComponent(IntegrationFlowBeanPostProcessor.java:280) ~[spring-integration-java-dsl-1.2.2.RELEASE.jar:na]
at org.springframework.integration.dsl.config.IntegrationFlowBeanPostProcessor.processStandardIntegrationFlow(IntegrationFlowBeanPostProcessor.java:242) ~[spring-integration-java-dsl-1.2.2.RELEASE.jar:na]
at org.springframework.integration.dsl.config.IntegrationFlowBeanPostProcessor.processIntegrationFlowImpl(IntegrationFlowBeanPostProcessor.java:254) ~[spring-integration-java-dsl-1.2.2.RELEASE.jar:na]
at org.springframework.integration.dsl.config.IntegrationFlowBeanPostProcessor.postProcessBeforeInitialization(IntegrationFlowBeanPostProcessor.java:103) ~[spring-integration-java-dsl-1.2.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:422) ~[spring-beans-5.0.0.RC3.jar:5.0.0.RC3]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1707) ~[spring-beans-5.0.0.RC3.jar:5.0.0.RC3]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.0.0.RC3.jar:5.0.0.RC3]
... 15 common frames omitted

IntegrationFlowBeanPostProcessor类定义有2个,我的应用程序可以使用它:org.springframework.integration.dsl.config.IntegrationFlowBeanPostProcessor

和下面的代码,它抛出类未找到异常:

if (component instanceof org.springframework.integration.expression.IntegrationEvaluationContextAware)

另一个类在这个包中:org.springframework.integration.config.dsl

它不使用IntegrationEvaluationContextAware。

但我的应用程序使用第一个。

它可能是什么原因?

谢谢

spring-integration spring-integration-dsl
1个回答
0
投票

我现在阅读Spring Integration 4.3到5.0迁移指南,我看到了这一点:Java DSL Spring Integration Java DSL已经与Java 8代码库合并到Core项目中。旧项目仍然适用于以前的Spring Integration版本,并且与5.0版本不兼容。我删除java-dsl依赖项,我的项目工作。对不起我的问题

© www.soinside.com 2019 - 2024. All rights reserved.