VSCode & Spring Boot

VSCode & Spring Boot

Spring Boot 를 시작하기 앞서 Visual Studio Code(이하 VSCode)에 대해 간단하게 소개한다.
나는 VSCode 를 굉장히 좋아한다.
가볍고 커스터마이징이 쉬우며, 사용자가 많아 레퍼런스 찾기도 쉽다.
또 공식 가이드가 매우 잘되어 있는 편이다.
아래는 VSCode 에서 공식 지원하는 Spring 사용 가이드 이다.
[공식]VSCode 에서 Spring Boot 설치하기

현재 글을 작성중인 툴도 VSCode 를 사용하고 있으며 Markdown 뷰어도 제공하고 있어 편리하게 사용한다.

본 글은 위 공식 가이드에 맞춰 VSCode 에서 Spring Boot 를 Gradle 환경으로 설정할 수 있도록 작성해 보고자 한다.

VSCode 에서 Spring Boot 시작하기

Essential

먼저 VSCode 및 JAVA 환경 등은 모두 구축되어 있다는 가정하에 진행한다.
최소 스펙은 아래와 같다.

  • JDK 1.8
  • Apache Maven 3.0 이상

만약 설치가 안되었다면 아래에서 JDK 를 받아 설치하자

https://www.oracle.com/java/technologies/javase-downloads.html

Java Extension Pack

Java Extension Pack는 VSCode 에서 JAVA 개발하기 위한 기본적인 도구이다.
VSCode Marketplace 에서 다운 받을 수 있으므로 Ctrl + Shift + X 를 눌러 Java Extension Pack 을 설치하자

JEP/설치

해당 패키지에는
총 6개가 포함되어 있다.

  • Language Support for Java(TM) by Red Hat
  • Debugger for Java
  • Java Test Runner
  • Maven for Java
  • Java Dependency Viewer
  • Visual Studio IntelliCode

Spring Boot Initializing

이렇게 설치를 하고나면 VSCode 에서 Generator 를 이용하여 Spring Boot 프로젝트를 생성할 수 있다.

VSCode 에서는 Gradle 프로젝트와 Maven 프로젝트 두개다 Generator 로 제공하고 있는데 필자는 빌드 환경 또한 코드처럼 관리할 수 있는 gradle 을 선호하는 편이다. 각자 본인이 선호하는 빌드 툴을 사용해도 되지만 본 예제에서는 Gradle 을 이용한 프로젝트를 생성하도록 한다.


VSCode 에서 Ctrl + Shift + P 를 누른 후 Spring Initializr: Generate a Gradle Project 를 선택

SBI/생성

개발시 사용할 언어를 선택하고

  • JAVA
  • Kotlin
  • Groovy

SBI/언어선택

다음 창에서 Group ID, Artifact ID 를 넣고

SBI/Group
SBI/Artifact

Spring Boot 버전을 선택
(현재시점 LTS 2.2.7 선택)

SBI/boot 버전

만들고자 하는 프로젝트에 따라 맞는 dependency 를 고른다.
본 예제에서는 예제용 프로젝트로 간단한 REST API 테스트할 수 있는 Spring Boot DevToolsSpring Web 두개를 선택

SBI/Dep 추가

다음 팝업으로 뜨는 창에서 프로젝트 설치 위치를 설정하고

SBI/Location

하단에 작은 알림이 하나 뜨는데 Open 을 누르게 되면 생성된 프로젝트가 VSCode 새창으로 열리게 된다.

SBI/Location noti
SBI/Complete

Spring Boot Run

VSCode 에서 프로젝트를 실행하려면 여러가지 방법이 있다.

1. 단축키 F5 이용

단축키인 F5 를 이용하면 디버깅 모드로 프로그램이 실행된다.
Ctrl + F5 를 이용하면 디버깅 없이 실행 할 수 있다.

SBR/실행방법1

이 방법으로 실행하게 되면 상단에 조그만 리모컨이 생기며 실행 상태를 조작할 수 있다.

SBR/실행중 리모컨

2. VSCode 컴포넌트 이용

Explorer 탭에있는 컴포넌트를 이용하여 실행도 가능하다
Explorer 탭 하단에 있는 SPRING-BOOT DASHBOARD 를 보면 설정한 Artifact ID 가 보일 것이다. 여기서 Start 버튼을 눌러서 실행한다.

SBR/실행방법2

3. Terminal 이용

Terminal 에서 직접 실행도 가능하다.
VSCode 에서 Ctrl + Shift + ~ 를 누르면 Terminal 이 열린다. 이곳에서
./gradlew bootRun 을 입력하면 실행된다.

SBR/실행방법3

실행 확인

실행중인 Spring 을 확인하기 위해 브라우저에서 접속해보도록 하자

브라우저에서 http://localhost:8080 을 입력하면 Error Page 가 뜰 것이다.

SBI/접속화면

Spring Boot REST API 작성

지금까지 Spring Boot 를 VSCode 에서 실행할 수 있는 환경 구성을 완료 했다.

기본적인 셋팅은 Generator 를 통해 자동으로 해주었으므로 여기서 간단한 API 를 만들어 보도록 한다.

Controller 작성

DemoController.java 를 만들어 다음과 같이 작성한다.
Rest/dir

package com.example3.demo;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoController {

    @RequestMapping("/")
    public String hello() {
        return "Hello World!";
    }

}

작성을 한뒤 F5 를 눌러 실행한 후
아까 접속했던 http://localhost:8080 을 새로고침 해보자

Rest/HelloWorld

간단한 GET 메소드가 완성 되었다!

디버깅

디버깅을 하기위해 DemoController.java 의 중간에 Breakpoint 를 설정한다.

Rest/중단점

다시 브라우저에서 새로고침을 하게되면 다음과 같이 Break가 걸리게 된다.

Rest/디버깅

여느 IDE 처럼 한스탭 씩 혹은 Depth 를 타고 들어가거나 계속 실행을 하게 할 수 있다.

또한 디버깅 모드로 실행시 나오는 Callstack 을 이용하여 현재 어떤 콜스택이 실행 중인지 확인도 가능하다.

Rest/디버깅2

결론

VSCode 에서도 Spring 개발 환경 구축이 가능하다.
Spring Boot Generator 를 이용하여 빠르게 초기 설정이 가능하다.
이클립스보다 쾌적한 환경(?) 을 제공해준다.

+ Recent posts