Spring-boot와 Spring-cloud의 호환성 매트릭스가 있습니까?
Springboot과 Springcloud 사이에 호환성 매트릭스가 있는지 궁금합니다.
STS에 관한 간단한 프로젝트를 작성했는데 호환성 문제가 발생하고 있습니다.
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Camden.SR5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
지원되는 버전의 Springboot과 Springcloud를 모두 잘 볼 수 있으면 작업이 더 쉬워집니다.
이 요구에 관한 미해결 이슈를 보았습니다(https://github.com/spring-cloud/spring-cloud-build/issues/43).
커뮤니티는 SpringCloud 프로젝트를 시작할 때 특정 버전 조합을 시작하는 방법을 선택하고 있습니까?
편집: 어제부터 발생한 문제의 다른 인스턴스를 추가합니다.
pom.xml의 단편
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<!--<version>1.5.2.RELEASE</version> -->
<relativePath /> <!-- lookup parent from repository -->
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<!-- <version>Camden.SR6</version -->
<!-- <version>Brixton.SR5</version> -->
<!-- <version>Camden.SR6</version> -->
<version>Camden.SR5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
1.5.2 사용에는 maven 오류가 없습니다.캠든과 함께 해제.그러나 SR5는 앱이 시작되면 NoClassDefFoundError를 발생시킵니다.
2017-03-28 09:51:15.148 ERROR 15808 --- [ main] o.s.boot.SpringApplication : Application startup failed
java.lang.NoClassDefFoundError: org/springframework/cloud/context/named/NamedContextFactory$Specification
at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_112]
at java.lang.ClassLoader.defineClass(ClassLoader.java:763) ~[na:1.8.0_112]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_112]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467) ~[na:1.8.0_112]
at java.net.URLClassLoader.access$100(URLClassLoader.java:73) ~[na:1.8.0_112]
at java.net.URLClassLoader$1.run(URLClassLoader.java:368) ~[na:1.8.0_112]
at java.net.URLClassLoader$1.run(URLClassLoader.java:362) ~[na:1.8.0_112]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_112]
at java.net.URLClassLoader.findClass(URLClassLoader.java:361) ~[na:1.8.0_112]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_112]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_112]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_112]
at org.springframework.cloud.netflix.feign.FeignClientsRegistrar.registerClientConfiguration(FeignClientsRegistrar.java:367) ~[spring-cloud-netflix-core-1.2.5.RELEASE.jar:1.2.5.RELEASE]
at org.springframework.cloud.netflix.feign.FeignClientsRegistrar.registerDefaultConfiguration(FeignClientsRegistrar.java:104) ~[spring-cloud-netflix-core-1.2.5.RELEASE.jar:1.2.5.RELEASE]
at org.springframework.cloud.netflix.feign.FeignClientsRegistrar.registerBeanDefinitions(FeignClientsRegistrar.java:87) ~[spring-cloud-netflix-core-1.2.5.RELEASE.jar:1.2.5.RELEASE]
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromRegistrars(ConfigurationClassBeanDefinitionReader.java:352) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:143) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:116) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:320) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:228) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:270) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:93) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:686) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:524) ~[spring-context-4.3.7.RELEASE.jar:4.3.7.RELEASE]
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.5.2.RELEASE.jar:1.5.2.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:737) [spring-boot-1.5.2.RELEASE.jar:1.5.2.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:370) [spring-boot-1.5.2.RELEASE.jar:1.5.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) [spring-boot-1.5.2.RELEASE.jar:1.5.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1162) [spring-boot-1.5.2.RELEASE.jar:1.5.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1151) [spring-boot-1.5.2.RELEASE.jar:1.5.2.RELEASE]
at com.forecastessentials.school.SchoolUniformForecastApplication.main(SchoolUniformForecastApplication.java:12) [classes/:na]
Caused by: java.lang.ClassNotFoundException: org.springframework.cloud.context.named.NamedContextFactory$Specification
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_112]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_112]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_112]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_112]
... 31 common frames omitted
1.4.5를 브릭스턴과 함께 사용.SR6는 일반적으로 저에게 적합한 조합입니다.
2023년 1월 갱신
스프링 클라우드 릴리즈 트레인 스프링 부트 호환성
호환성 매트릭스 |
---|
봄 구름 | 스프링 부트 |
---|---|
2022.0.x 킬번 | 3.0.x |
2021.0.3+ 일명 주빌리 | 2.6.x, 2.7.x |
2021.0.x 주빌리 | 2.6.x |
2020.0.3+ 일포드 | 2.4.x, 2.5.x |
2020.0.x 일포드 | 2.4.x |
⚠ Spring Cloud 이하 버전은 모두 수명이 다하여 더 이상 지원되지 않습니다. |
---|
봄 구름 | 스프링 부트 |
---|---|
Hoxton.SR5+ | 2.2.x, 2.3.x |
헉스턴 | 2.2.x |
그리니치 | 2.1.x |
핀치리 | 2.0.x |
에지웨어 | 1.5.x |
돌스턴 | 1.5.x |
Camden.SR5+ | 1.4.x, 1.5.x |
캠든 | 1.4.x |
브릭스턴 | 1.3.x, 1.4.x |
천사 | 1.2.x |
⚠ 아래는 Spring Cloud의 이정표입니다. |
---|
봄 구름 | 스프링 부트 |
---|---|
2022.0.0-M4 | 3.0.0-M4 |
2022.0.0-M3 | 3.0.0-M3 |
2022.0.0-M2 | 3.0.0-M2 |
2022.0.0-M1 | 3.0.0-M1 |
2021.0.0-M2 | 2.6.0-M3 |
출처:
- Spring Cloud 프로젝트 페이지
- Spring Cloud 2021.0.0-M2(코드명 주빌리) 이용 가능
- Spring Cloud 2021.0.0(코드명 주빌리) 출시
- 봄 클라우드 로드맵 및 EOL 발표
- 2022.0.0-M1
PRE
참조 문서 - Spring Cloud 2022.0.0-M2(코드명 Kilburn) 출시
- Spring Cloud 2022.0.0-M3(코드명 Kilburn) 출시
다음으로 릴리즈 트레인의 Spring Boot 호환성 표를 나타냅니다.아래 표에 Camden 릴리즈 트레인은 Spring Boot 1.4.x를 기반으로 하지만 1.5.x에서도 테스트되고 있음을 나타냅니다.
호환되는 컴포넌트 버전이 기재되어 있는 각 릴리스의 릴리스 노트도 참조할 수 있습니다.
하지만 나중에:
네, 있습니다.http://start.spring.io/actuator/info
봄 클라우드뿐만 아니라 더 많은 라이브러리가 포함되어 있지만 모든 라이브러리가 포함된 것은 아닙니다.
2022년에는 Spring Boot과 Spring Cloud의 최신 버전을 찾는 것이 여전히 지루합니다.다음은 순서입니다.
https://spring.io/projects/spring-cloud에서 호환성 매트릭스를 검색하여
Release Trains
표에서는 스프링 부트 및 스프링클라우드 릴리즈 트레인의 버전이 일치하는지 보여 줍니다. : 2022-12-06
'릴리스 트레인'은 '릴리스 트레인'입니다.
" : : "Hoxton
> ==>Hoxton.SR12
체체: :
https://github.com/spring-cloud/spring-cloud-release/tags에서 일치하는 최신 Spring Cloud Release Train 버전을 찾을 수 있습니다.[ Boot Version ]컬럼에서 값을 선택하고 Spring Boot 릴리즈에서 가장 일치하는 버전을 검색합니다.여기서는 https://github.com/spring-projects/spring-boot/releases 또는 (https://github.com/spring-projects/spring-boot/tags)를 참조해 주세요.
계속 예"==> "==>v2.3.12.RELEASE
또 다른 정보원은 스프링 블로그 카테고리 "http://https://spring.io/blog/category/releases,"입니다만, 조금 혼란스럽습니다.
스프링 부츠와 스프링 클라우드의 정확한 버전 호환성을 얻을 수 있는 방법을 찾았습니다.
다음 URL을 방문하십시오.https://start.spring.io/actuator/info
spring-cloud": {
"Hoxton.SR12": "Spring Boot >=2.2.0.RELEASE and <2.4.0.M1",
"2020.0.5": "Spring Boot >=2.4.0.M1 and <2.6.0-M1",
"2021.0.0-M1": "Spring Boot >=2.6.0-M1 and <2.6.0-M3",
"2021.0.0-M3": "Spring Boot >=2.6.0-M3 and <2.6.0-RC1",
"2021.0.0-RC1": "Spring Boot >=2.6.0-RC1 and <2.6.1",
"2021.0.1": "Spring Boot >=2.6.1 and <2.6.5-SNAPSHOT",
"2021.0.2-SNAPSHOT": "Spring Boot >=2.6.5-SNAPSHOT and <3.0.0-M1",
"2022.0.0-M1": "Spring Boot >=3.0.0-M1 and <3.1.0-M1"
},
언급URL : https://stackoverflow.com/questions/42659920/is-there-a-compatibility-matrix-of-spring-boot-and-spring-cloud
'programing' 카테고리의 다른 글
Json을 반환하지만 원하지 않는 뒤로 슬래시 "\"를 포함합니다. (0) | 2023.02.23 |
---|---|
WooCommerce - URL에서 제품 및 제품 카테고리를 삭제하는 방법 (0) | 2023.02.23 |
문자열 배열에서 Orderby 필터를 작동시키는 방법은 무엇입니까? (0) | 2023.02.23 |
oracle sqlplus에서 테이블 데이터를 보다 명확하게 표시하는 방법 (0) | 2023.02.23 |
리액트JS에 표시되도록 div를 스크롤하려면 어떻게 해야 합니까? (0) | 2023.02.23 |