스프링 부트 ClassNotFoundException org.springframework.core.metrics.응용 프로그램 부팅
현재 Spring Boot 및 GCP 데이터 스토리지에서 개념 실증 작업을 하고 있습니다.
나의pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-gcp-data-datastore</artifactId>
<version>1.2.6.RELEASE</version>
</dependency>
문제: 스프링 부트가 시작되지 않음
애플리케이션을 기동하려고 하면, 다음의 메세지가 표시됩니다.
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup
at org.springframework.boot.SpringApplication.<init>(SpringApplication.java:251)
at org.springframework.boot.SpringApplication.<init>(SpringApplication.java:264)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1309)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1298)
내가 시도한 것
추가하려고 했습니다.Actuator
의존.하지만 그것은 효과가 없었다.나는 내가 놓치고 있는 의존관계가 무엇인지 알 수 없다.클래스 정의는 5.3.0-M2 매뉴얼에 기재되어 있습니다만, 어떤 의존관계에 있는지 알 수 없습니다.
또한 다음 메트릭 종속성을 추가하려고 했습니다.
- 봄구름-gcp-gcp-supply-disply
- 봄맞이
- 봄구름줄기류
저는 findjar.com에서 검색했지만 잘 되지 않았습니다.
가능하다면 나도 그것을 무효로 해도 상관없습니다.
업데이트:
덧붙였습니다.
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.3.1</version>
</dependency>
그러면 새로운 오류가 발생합니다.
존재하지 않는 메서드를 호출하려고 했습니다.다음 위치에서 시행되었습니다.
org.springframework.boot.SpringApplication.run(SpringApplication.java:324)
다음 메서드는 존재하지 않습니다.
'void org.springframework.context.ConfigurableApplicationContext.setApplicationStartup(org.springframework.core.metrics.ApplicationStartup)'
메서드의 클래스 org.springframework.context.Configurable Application Context 는 다음 위치에서 사용할 수 있습니다.
...액션:
org.springframework.context의 호환되는 단일 버전이 포함되도록 응용 프로그램의 클래스 경로를 수정합니다.설정 가능한 응용 프로그램콘텍스트
Spring Boot를 다운그레이드하여 이 문제를 해결할 수 있었습니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.3.3.RELEASE</version>
</dependency>
아직 2.4.0과 호환되지 않는 것 같습니다.
특히 2.3.3을 사용하고 있는지 확인해야 했습니다.다른 문제로 인해 릴리스가 해제되고 최신은 해제되지 않았습니다.
스프링 클라우드의 종속성은 없지만 2.3에서 Spring Boot 2.4로 업그레이드할 때도 동일한 오류가 발생했습니다.
Exception in thread "main" java.lang.NoClassDefFoundError:
org/springframework/core/metrics/ApplicationStartup
이 스레드의 대화(https://github.com/spring-projects/spring-boot/issues/24880)에서 Spring Framework 5.3.3으로 업그레이드하면 문제가 해결되었습니다.
spring-context JAR 파일의 적절한 버전이 아닌 이전 버전이 로드되어 동일한 문제가 발생하였습니다.
클래스 패스에 오래된 라이브러리의 기억이 없는지 확인합니다.
저도 같은 문제가 있었는데, 다음과 같은 의존관계를 추가하여 해결했습니다.
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>5.3.8</version>
</dependency>
저도 같은 문제가 있었습니다만, 다음과 같은 문제가 있었습니다.
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.9.RELEASE</version>
<scope>test</scope>
</dependency>
다음 버전으로 업그레이드하면 오류가 사라집니다.
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.3.3</version>
<scope>test</scope>
</dependency>
spring-cloud를 최신 버전으로 업그레이드하십시오.
이것은 당신의 첫 번째 오류에 직면했을 때 도움이 됩니다.
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup
Stéphane과 Arnaud의 도움에 감사드리며, 트위터 스레드를 확인해 주십시오.
저도 같은 문제가 있었습니다만, 그것은 버전 5.4.x 로 Import 하는 spring-security-ldap 에 의한 것입니다.
spring-security-ldap을 버전 5.5.0으로 업그레이드하면 문제가 해결되었습니다.
Spring Boot 테스트를 라이브러리에 처음 추가할 때 이 문제가 발생했습니다.이 경우 라이브러리에는 Spring Boot 어플리케이션이 없습니다.
이것이 성공했습니다.
@SpringBootApplication
public class TestApplication {
public static void main(final String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
「」만 spring-boot-starter-test
이치노
다른 종속성이 이전 버전의 spring-core에 종속되어 있지 않은지 확인합니다.
이것이 이 오류를 겪고 있는 누군가에게 도움이 되기를 바랍니다.
=> 오류는 다음과 같습니다.
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup
at org.springframework.context.support.AbstractApplicationContext.<init>(AbstractApplicationContext.java:229)
at org.springframework.context.support.GenericApplicationContext.<init>(GenericApplicationContext.java:112)
at org.springframework.context.annotation.AnnotationConfigApplicationContext.<init>(AnnotationConfigApplicationContext.java:67)
at org.springframework.context.annotation.AnnotationConfigApplicationContext.<init>(AnnotationConfigApplicationContext.java:91)
문제의 해결 방법:-
- Project folder\ 우클릭\Maven\Update maven project로 이동합니다.
- 스프링 버전을 확인합니다(pom.xml-> 속성 표시).
- Spring 버전을 이전/새 버전으로 변경합니다.그렇지 않으면 이것을 사용합니다.
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<spring.version>5.2.0.RELEASE</spring.version> <!--add this version-->
</properties>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
<dependency>
<groupId>org.springframework</groupId> <!-- sql dependency for jdbc-->
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
- 위의 내용을 추가한 후 저장하십시오(코드 빌드..).
- 프로그램 실행
최고의 남자 여러분, 렛츠 투더
는 부츠를 있었다.ClassNotFoundException ApplicationStartup
boot version이 gradle, spring boot version의 이었습니다.build.gradle.kts
들면 다음과 같습니다.
plugins {
id("org.springframework.boot") version "2.5.3"
...
}
dependencies {
implementation("org.springframework.boot:spring-boot:2.5.3")
...
}
언급URL : https://stackoverflow.com/questions/65046056/spring-boot-classnotfoundexception-org-springframework-core-metrics-applications
'programing' 카테고리의 다른 글
도커가 있는 WordPress 파일은 어디에 있습니까? (0) | 2023.04.01 |
---|---|
중첩된 지시어로 ng-model 전달 (0) | 2023.04.01 |
WordPress에서 get_posts()에 대해 페이지 매김을 하려면 어떻게 해야 합니까? (0) | 2023.04.01 |
WordPress REST API JWT 토큰을 검증하는 동안 jwt_auth_no_auth_header 오류가 발생했습니다. (0) | 2023.04.01 |
전류를 수동으로 설정할 때 useRef() 훅과 함께 사용하는 스크립트 유형은 무엇입니까? (0) | 2023.04.01 |