본문 바로가기
personal project/에러 해결

spring initializr 설치 이후 생기는 문제

by choi-dev 2024. 2. 27.

Intelli J Ultimate 버전을 사용하면 스프링 부트를 보다 편하게 설치할 수 있지만 나는 돈 없는 개발자이기에 Community 버전을 사용하고 있다. 예전엔 2버전 설치하게 했던 거 같은데 이젠 3버전과 자바 17이상으로 사용하게 바뀐 거 같다. 그래서 Spring Initializr를 사용해 Spring Web 의존성을 추가하고 실행시키려니 에러가 나서 해결 과정을 기록해두려고 한다.

 

실행시키지마자 나온 에러

예전에도 build.gradle 때문에 이런 과정이 있었던 것 같은데 까먹어서 다시 정리한다. 해당 문제가 생기는 것은 스프링이 3버전 출시되면서 자바의 17버전이상부터 요구하기 때문에 여러가지를 확인해야하는 상황이다.

 

버전을 다운그레이드한다.

이것은 내가 선택하지 않는다. 원하는 것은 3버전에서 올바르게 동작하는 것이기 때문에 적용하지 않겠다.

 

버전과 의존성을 확인한다.

일단 이 쪽에는 문제가 없음을 확인했다. Intelli J 또한 해당 JDK를 setup했기 때문에 문제가 없다.

 

plugins {
	id 'java'
	id 'org.springframework.boot' version '3.2.3'
	id 'io.spring.dependency-management' version '1.1.4'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'

java {
	sourceCompatibility = '17'
}

repositories {
	mavenCentral()
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-web'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
	useJUnitPlatform()
}

디폴트로 설정된 build.gradle의 java 버전도 확인해보았는데 17로 잘 적용되있다. 여기까지도 안되있다면 Intelli J가 자바에 대한 프로젝트를 17버전으로 실행시켜주어야 하는데 이걸 확인해야한다.

 

Intelli J 확인

Settings > Build, Execution, Deployment 단락 > 하단의 Gradle 확인했을 때를 보자. 초반에 자바 설치할 때 11버전으로 했었는데 JVM이 그대로 실행시키고 있었다. 이걸 바꿔보겠다.

 

Intelli J에서 빌드를 끝내더니 오류를 내뱉는 게 없어서 애플리케이션을 실행시켰다.

 

내 쪽에서는 정상적으로 동작해서 여기서 마무리하겠다.

 

위에서 더 안된다면

https://jojoldu.tistory.com/698

 

Spring Boot 3.x 실행이 안될 경우 (feat. IntelliJ)

스프링 부트 3.0 이 출시되었다. (현재 최신은 3.0.1 이지만) 3.0 부터는 Java 17부터 지원된다. 그러다보니 기존에 Java8, 11등을 사용하시던 분들은 3.x 스프링 부트 프로젝트를 실행할때 에러들을 만나

jojoldu.tistory.com

이동욱님 블로그의 예전 게시물을 확인해보면 될 듯하다.