inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이건 스프링 버전차이 인가요?

97

백엔드 지망생

작성한 질문수 10

0

 

강사님은 spring 2.4.5 버전입니다. 저는 3.3.4 버전입니다.
테스트 코드 작성 중인데
강사님께서는 @Autowired를 @SpringBootTest없이 사용해도 오류가 안떴는데 저는 뜨네요..
자동 주입된 멤버는 올바른 Spring bean에서 정의되어야 한다고 하는데 버전이 올라가면서 바껴서 이런걸까요

import org.flywaydb.core.Flyway;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.TestInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@TestInstance(TestInstance.Lifecycle.PER_CLASS)
public class ResetDatabase {
    @Autowired
    private Flyway flyway;


    @BeforeEach 
    public void setUp(){
       flyway.clean();
       flyway.migrate();
    }
}

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
스프링 버전이 다르면 사용법이나 기능에서 차이가 발생할 수 있습니다. 그러나 제공된 정보에는 스프링 버전 차이에 따른 @Autowired 사용법의 변화에 대한 구체적인 내용이 없습니다.

문제 해결을 위해 다음을 시도해보세요:
- 스프프링 공식 문서 또는 다른 신뢰할 수 있는 출처를 참조하여 해당 버전의 변화로그를 확인합니다.
- 버전 차이로 인한 문제가 맞는지 확인하기 위해 강사님과 동일한 환경에서 테스트를 시도해 볼 수 있습니다.

@Autowired는 스프링이 관리하는 빈(Bean)에 대해 자동으로 의존성을 주입할 때 사용합니다. @SpringBootTest와 같은 테스트 환경 설정 어노테이션 없이 @Autowired를 사용하려면 대상 클래스가 스프링 컨텍스트에 등록된 빈이어야 합니다. 버전이 다르면 세부적인 동작 방식이나 요구 사항에서 차이가 발생할 수 있으므로, 각 버전의 공식 문서를 참고하는 것이 좋습니다.

스프링 버전 업데이트가 원인일 수도 있지만, 정확한 원인 파악을 위해서는 해당 버전의 공식 문서나 변경 로그를 확인해 보시는 것이 가장 정확합니다.

강의 추천해주세요

2

27

1

케이테스트 서버 운영 방법

2

49

1

Navigation Mobile 토글 베리어블이 안됩니당

1

38

2

프로필 사진 세팅과 관련하여 질문 드립니다

1

48

2