web-dev-qa-db-ja.com

例外HandlerMethodArgumentResolversHolder

例外の下でこれを取得するアプリケーションを起動できません。

アップグレードしようとしている間Javaおよび春のブート親スターター

 Java.lang.IllegalStateException: Error processing condition on org.springframework.cloud.stream.config.BindingServiceConfiguration.bindingService
        at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.Java:64)
        at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.Java:108)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForBeanMethod(ConfigurationClassBeanDefinitionReader.Java:181)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.Java:141)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader
Caused by: Java.lang.NoClassDefFoundError: org/springframework/integration/config/HandlerMethodArgumentResolversHolder
    at Java.lang.Class.getDeclaredMethods0(Native Method)
    at Java.lang.Class.privateGetDeclaredMethods(Class.Java:2701)
    at Java.lang.Class.getDeclaredMethods(Class.Java:1975)
    at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.Java:668)
    ... 39 common frames omitted
Caused by: Java.lang.ClassNotFoundException: org.springframework.integration.config.HandlerMethodArgumentResolversHolder
    at Java.net.URLClassLoader.findClass(URLClassLoader.Java:381)
    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:424)
    at Sun.misc.Launcher$AppClassLoader.loadClass(Launcher.Java:338)
    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:357)
    ... 43 common frames omitted

pom.xmlがSpring Bootの親スターターとJavaをアップグレードしました

そのために他のMaven依存関係を追加する必要がありますか?

スプリング統合コアの依存関係を追加しようとすると、別の例外が発生します。

<parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.1.1.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.9</Java.version>
            <springfox.version>2.6.0</springfox.version>
        </properties>


    <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-jersey</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jpa</artifactId>

            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
            </dependency>
            <dependency>
             <groupId>org.springframework.data</groupId>
             <artifactId>spring-data-redis</artifactId>

         </dependency>

            <!-- Circuit Breaker -->
            <dependency>
                <groupId>io.pivotal.spring.cloud</groupId>
                <artifactId>spring-cloud-services-starter-circuit-breaker</artifactId>
            </dependency>

            <!-- Registry & Discovery -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            </dependency>

            <!-- For Config Server -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-config</artifactId>
            </dependency>

            <!-- spring reactor -->
            <dependency>
                <groupId>io.projectreactor</groupId>
                <artifactId>reactor-core</artifactId>
                <version>3.1.0.RELEASE</version>
            </dependency>

            <dependency>
                <groupId>commons-beanutils</groupId>
                <artifactId>commons-beanutils</artifactId>
                <version>1.9.3</version>
            </dependency>
                <dependency>
                <groupId>io.rest-assured</groupId>
                <artifactId>rest-assured</artifactId>
                <version>3.0.5</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-core</artifactId>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.Apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>3.7</version>
            </dependency>
            <!-- Excel Generation -->
            <dependency>
                <groupId>org.jxls</groupId>
                <artifactId>jxls-reader</artifactId>
                <version>2.0.2</version>
            </dependency>

            <!--Common jar dependency -->

            <dependency>
                <groupId>net.minidev</groupId>
                <artifactId>json-smart</artifactId>
                <version>2.2.1</version>
            </dependency>

            <dependency>
                <groupId>io.lettuce</groupId>
                <artifactId>lettuce-core</artifactId>
                <version>5.1.1.RELEASE</version> 
            </dependency>
            <dependency>
                <groupId>biz.paluch.redis</groupId>
                <artifactId>lettuce</artifactId>
                <version>4.4.1.Final</version>
            </dependency>
        </dependencies>

        <dependencyManagement>
            <dependencies>
                <!-- <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-dependencies</artifactId>
                    <version>2.1.1.RELEASE</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency> -->
                <dependency>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-dependencies</artifactId>
                    <version>Finchley.SR2</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
                <dependency>
                    <groupId>io.pivotal.spring.cloud</groupId>
                    <artifactId>spring-cloud-services-dependencies</artifactId>
                    <version>1.3.1.RELEASE</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>

            </project>
6
Thiru

Spring-cloudをGreenwich.RELEASEにアップグレードする必要があります。現在Finchley.SR2をプルしています。これは、Spring Boot 2.1.xと互換性のない誤ったストリームとSIの依存関係をプルします

3

これは問題のようです:

問題#1521 spring-integration-core 5.1.0との非互換性

この問題は、2.0.6から2.1.0へのスプリングブートアップグレード時に再現されました(スプリング統合バージョンも更新されました)。

...

これは既知の問題であり、SCStの特定のリリースが他のライブラリの特定のリリースで動作することを確認するために他にできることはありません。このケースを複雑にするのは、スタックトレースからわかるように、この特定の非互換性は、spring-bootではなく、spring-cloud-streamとはまったく関係がないということです。また、ブート2.1.0.RELEASEでビルドされたspring-cloud-stream 2.1.0.RC1をリリースしました。 SI 5.1.0.RELEASEを使用します。 - https://spring.io/blog/2018/10/30/spring-cloud-stream-fishtown-rc1-2-1-0-rc1-release-announcement

だから私はこの問題を閉じています。

これは同様の問題です(これもSpring Bootアップグレードで、Spring Cloudでも):

https://github.com/spring-projects/spring-boot/issues/15088

提案:

  1. 別のバージョンのSpring Bootでビルドしてみてください。

  2. 動作する場合は、見つけたものを投稿してください。

1
paulsm4