프로그래밍

IntelliJ + Spring Boot 개발환경 준비

유태정 2022. 8. 19. 23:54
반응형

어쩌다가 Spring을 공부하게 됐다. 백엔드에 대해서 아는 것이 아무것도 없어서 막막할 따름이다. 일단, 도서관에서 책이라도 빌렸다. 책에서는 이클립스에 STS 플러그인을 설치하여 사용하는데, 현재는 해당 플러그인이 검색되지 않을 뿐더러 비슷해보이는 플러그인은 버전 문제로 설치조차 안 된다. 이클립스 최신 버전에서 다시 시도를 해볼까 생각을 해봤지만, IntelliJ에서 다시 시도해보기로 했다. 다행히, IntelliJ 공식 문서에 Spring 프로젝트 생성에 관한 가이드가 잘 작성돼 있었다.

 

Spring | IntelliJ IDEA

 

www.jetbrains.com

하지만, 위 문서에도 나와 있듯이 Spring 및 이와 관련된 플러그인에 대한 지원은 Ultimate 버전에서만 기본 제공된다. 난 Community 버전을 이용하기 때문에, 다른 방법을 알아보아야 했다. 구글링을 해보니 다음과 같은 질의응답을 찾을 수 있었다.

 

IntelliJ Community Edition and Spring Boot???

Can I run Spring Boot applications in IntelliJ Community Edition? I have a generated Spring Boot project from Spring Initializer website.  I want to import in IntelliJ Community Edition and run it....

intellij-support.jetbrains.com

질문자는 Spring Initializer Website를 이용해 Spring Boot 프로젝트를 생성했다고 언급했다. 이는 https://start.spring.io/으로 추정된다. 그리고 답변자는 Comunity 버전에서는 Spring Boot에 관한 지원을 제공하지 않으니 Gradle 혹은 Maven을 이용하여 빌드 및 실행해야 한다고 답했다. Gradle과 Maven은 옛날에 안드로이드 스튜디오에서 본 적이 있으나 이에 대해 알지는 못한다. 그래서 이에 대해 찾아보았다.

 

메이븐(Maven)과 그래들(Gradle)의 개념 및 비교

스프링과 스프링부트를 공부 하려던 중 maven과 gradle을 알게되었습니다. maven과 gradle이 빌드관리도구인 것은 알고있지만 자세한 개념은 모르기에 maven과 gradle 각각의 개념과 정확한 차이점을 알

dev-coco.tistory.com

이들은 빌드관리도구다. 프로젝트에 필요한 라이브러리들과 해당 라이브러리가 의존하는 또 다른 라이브러리까지 자동으로 관리(업데이트)해준다. 둘 중 Gradle이 더 좋다고 하는 것 같다. 가독성이나 속도에서 이점이 있는 것 같다. 프로젝트에 Gradle 속성 파일을 작성해두고 빌드 버튼을 누르면 자동으로 라이브러리를 다운로드하여 준비해주는 것 같다. 다행히도 IntelliJ 모든 버전에는 기본적으로 Gradle이 제공되고 있고, Gradle 프로젝트를 위한 가이드가 있다. 근데 뭐 딱히 가이드가 필요한 정도까진 아닌 것 같다.

 

Gradle | IntelliJ IDEA

 

www.jetbrains.com

위에 언급한 Spring Initialzier 사이트를 통해 Spring Boot 프로젝트를 생성하여 IntelliJ에서 불러와줬다. 불러오고 모든 라이브러리까지 로드했는데, 실행 구성을 해줘야할 것 같다. 그냥 실행을 해버리면 오류가 난다. 

 

Gradle 기반 Spring 프로젝트 IntelliJ에서 임포트와 실행하기

Gradle 기반 Spring 프로젝트 IntelliJ에서 임포트와 실행하기 . GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

Execution failed for task ':compileJava'.
> invalid source release: 11

생각해보니 JDK를 찾지 못해서 발생한 오류 같다. 블로그 글을 보고 프로젝트와 Gradle에서 사용하는 JDK 버전을 11로 맞춰줬다.

 

[스프링부트] invalid source release: 11 오류

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%E...

blog.naver.com

이번엔 포트가 이미 사용 중이라는 오류가 뜬다.

Web server failed to start. Port 8080 was already in use.

application.properties 파일에 server.port: 9090으로 작성하여 다른 포트를 사용함으로써 해결했다.

 

Web server failed to start Port 8080 was already in use

In this post, We will try to understand the "Web server failed to start.Port 8080 was already in use" error and how to fix it.

springhow.com

 

반응형