swagger에서 아래와 같은 에러 발생

컨테이너에서 확인해 보니 아래와 같은 로그를 발견했다.
Caused by: java.lang.NoSuchMethodError: 'java.lang.String io.swagger.v3.oas.annotations.media.Schema.$dynamicRef()'
annotation과 core의 버전 불일치 문제라고 한다.
jar에 있는 파일 목록을 살펴보았다.
root: /# jar tf ./app.jar | grep -E "swagger|springdoc"
BOOT-INF/lib/springdoc-openapi-starter-common-2.8.16.jar
BOOT-INF/lib/springdoc-openapi-starter-webmvc-api-2.8.16.jar
BOOT-INF/lib/springdoc-openapi-starter-webmvc-ui-2.8.16.jar
BOOT-INF/lib/swagger-annotations-2.2.21.jar
BOOT-INF/lib/swagger-annotations-jakarta-2.2.43.jar
BOOT-INF/lib/swagger-core-jakarta-2.2.43.jar
BOOT-INF/lib/swagger-models-jakarta-2.2.43.jar
BOOT-INF/lib/swagger-ui-5.32.0.jar
swagger-annotation과 annotaion-jakarta 의 버전이 맞지 않았다.
2.2.21에는 $dynamicRef() 메서드가 없어서 발생한 사건으로 보인다.
2.2.21이 너무 낮은 버전이어서 2.2.43 으로 build.gradle에 추가
dependencyManagement {
dependencies {
dependency 'io.swagger.core.v3:swagger-annotations:2.2.43'
}
}