Spring

존재하지 않는 메서드를 호출하려고 했습니다. 다음 위치에서 시도했습니다.

기록만이살길 2022. 12. 4. 23:39
반응형

존재하지 않는 메서드를 호출하려고 했습니다. 다음 위치에서 시도했습니다.

1. 질문(문제점):

Spring boot JPA Gridle project. _ 현재 Swagger실행 중이며 진행 중 오류가 발생합니다 DTO. 모듈이 서로 충돌하는 것 같습니다.

swagger모듈을 설치하고 swagger를 진행하여 DTO용 모듈을 설치하면 오류가 발생합니다 . 다음 모듈은 오류를 생성합니다.

compile 'org.springframework.boot:spring-boot-starter-hateoas'

그리고 오류는 다음과 같습니다.

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2020-03-17 01:26:38.657 ERROR 4688 --- [           main] o.s.b.d.LoggingFailureAnalysisReporter   : 

***************************
APPLICATION FAILED TO START
***************************

Description:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

    springfox.documentation.spring.web.plugins.DocumentationPluginsManager.createContextBuilder(DocumentationPluginsManager.java:152)

The following method did not exist:

    org.springframework.plugin.core.PluginRegistry.getPluginFor(Ljava/lang/Object;Lorg/springframework/plugin/core/Plugin;)Lorg/springframework/plugin/core/Plugin;

The method's class, org.springframework.plugin.core.PluginRegistry, is available from the following locations:

    jar:file:/Users/****/.gradle/caches/modules-2/files-2.1/org.springframework.plugin/spring-plugin-core/2.0.0.RELEASE/95fc8c13037630f4aba9c51141f535becec00fe6/spring-plugin-core-2.0.0.RELEASE.jar!/org/springframework/plugin/core/PluginRegistry.class

It was loaded from the following location:

    file:/Users/****/.gradle/caches/modules-2/files-2.1/org.springframework.plugin/spring-plugin-core/2.0.0.RELEASE/95fc8c13037630f4aba9c51141f535becec00fe6/spring-plugin-core-2.0.0.RELEASE.jar


Action:

Correct the classpath of your application so that it contains a single, compatible version of org.springframework.plugin.core.PluginRegistry


Process finished with exit code 1

검색을 통해 시도한 것들도 마찬가지입니다.

compile group: 'org.springframework.plugin', name: 'spring-plugin-core', version: '2.0.0.RELEASE'

compile group: 'io.springfox', name: 'springfox-data-rest', version: '2.9.2'

그들 중 누구도 나를 돕지 않았습니다.

나와 같은 문제가 있는 사람이 있습니까?

이 문제를 해결할 다른 방법이 있습니까?

2. 해결방안:

문제는 Swagger와 Hateoas 모듈 간의 충돌이었습니다. 여러 검색 결과에서 해결책을 찾았습니다.

해결책은 새 모듈을 추가하고 등록 Bean하는 것이었습니다.

compile group: 'org.springframework.plugin', name: 'spring-plugin-core', version: '1.2.0.RELEASE'

SwaggerConfig.java

public class SwaggerConfig {

    @Bean
    public LinkDiscoverers discoverers() {
        List<LinkDiscoverer> plugins = new ArrayList<>();
        plugins.add(new CollectionJsonLinkDiscoverer());
        return new LinkDiscoverers(SimplePluginRegistry.create(plugins));
    }

}
반응형