자바 웹을 다루는 기술

[Spring Boot] VS Code로 하기

피아마수 2024. 2. 13. 17:42

현재 최신 버전의 VS Code로 스프링부트를 실행 하기 위해서는 java version 17이 필요하다 일단 17버전을 깔고 환경변수 설정을 해준다.

 

 

환경변수 설정이 끝나면 이제 vscode를 통해서 springboot와 gradle 프로젝트를 실행할 확장 팩을 설치해줘야한다.

▷ Spring Boot Extension Pack
▶ Extension Pack for Java
▷ Lombok Annotations Support for VS Code
▶ Gradle for Java

 

 

 

 

 

 

 

 

프로젝트 생성

 

이제 springboot 프로젝트를 생성할 수있다.

 

ctrl+ shift + P 를 누르고 >spring initializr: create a gradle project 를 검색한다

 

spring boot 버전 3.1.8 버전을 선택해 주었다.

 

 

java 소스코드 사용할 꺼라고 설정해주고

 

자바 소스코드를 보관할 패키지 명을 설정한다.

프로젝트의 이름을 설정한다.

나중에 빌드 해서 배포할때 뭐로 할껀지 설정한다 . jar로 해두긴하는데 나중에 변경가능

자바 jdk버전은 아까 설치해준 17 버전으로 한다.

이제 의존성 부여인데 의존성은 spring web 과 thymeleaf 두개를 선택하고 ENTER 친다

 

 

 

워크 스페이스 선택후

Add to Workspace하면 현재 워크스페이스에 폴더만 추가 된다.

 

 

파일 탐색기에 방금 생성한 demo2가 생성 되었음을 확인 할 수있다.

 

 

이제 실행하면 자바 17버전을 요구하면서 실행이 안될 것이다.

vscode의 자바 버전과 gradle이 실행될 자바 버전을 변경해주어야한다.

설정에 들어가서 java-home을 검색해서 나오는 페이지에서 settings.json을 눌러 수정한다.

 

자신의 jdk 17이 설치된 경로를 복사해서 붙여넣기 해주면 된다.

 

 

 

여기까지하면 실행된다!

vscode 에서 해결못한 단점은 프로젝트를 추가할때마다 워크스페이스를 껐다켜야 SpringBoot DashBoard에서 실행 할수있는 application이 추가 된다는 점이다.

vscode를 껐다 키고  java root 로딩후 dashboard에 추가되는것이 보일것이다.

 

왼쪽 아래 이런 식으로 뜨면서 gradle 종속성을 추가하고

dashboard에 demo2가 추가된다

실행버튼을 누르면 실행된다.

 

실행된 프롬프트 화면

 

 

 

로그 색깔 지정

 

 

로그가 매우 하얘서 글자 구분이 잘 안될 것이다 이때는 

color customization 를 설정 창에서 검색해 settings.json에서 수정하기를 누른다.

 

 

  "workbench.colorCustomizations" 이라고 적힌 부분을 아래와 같이 수정해준다.

  "workbench.colorCustomizations": {
        "terminal.background":"#1D2021",
        "terminal.foreground":"#ffffff",
        "terminalCursor.background":"#A89984",
        "terminalCursor.foreground":"#A89984",
        "terminal.ansiBlack":"#1D2021",
        "terminal.ansiBlue":"#0D6678",
        "terminal.ansiBrightBlack":"#665C54",
        "terminal.ansiBrightBlue":"#0D6678",
        "terminal.ansiBrightCyan":"#8BA59B",
        "terminal.ansiBrightGreen":"#95C085",
        "terminal.ansiBrightMagenta":"#8F4673",
        "terminal.ansiBrightRed":"#FB543F",
        "terminal.ansiBrightWhite":"#FDF4C1",
        "terminal.ansiBrightYellow":"#FAC03B",
        "terminal.ansiCyan":"#8BA59B",
        "terminal.ansiGreen":"#95C085",
        "terminal.ansiMagenta":"#8F4673",
        "terminal.ansiRed":"#FB543F",
        "terminal.ansiWhite":"#A89984",
        "terminal.ansiYellow":"#FAC03B",
    }

 

 

그리고 현재 실행중인 프로젝트의 application.properties파일에 아래와 같이 추가한다

#log color settings
spring.output.ansi.enabled=always

 

이제 실행하면 로그별로 색깔이 나온다.

 


 

 

LiveLoad

spring boot 프로젝트를 수정할때마다 업데이트 되어 서버를 한번만 켜도 되게 하고 싶다

build.gradle 파일에 아래와 같이 추가해주면 프로젝트를 수정할때마다 springboot가 자동으로 알아서 reload해준다.

compileOnly "org.springframework.boot:spring-boot-devtools"