전자정부프레임워크) eGovFramework

VS Code Spring boot + Gradle 빌드 및 실습

pogun 2024. 12. 1. 08:26

1. 자바 OpenJDK 설치

2. jdk 버전 관리 및 프로젝트 작업 공간 세팅

jdk : 여러 버전의 JDK를 관리하는 용도의 폴더로 지금은 JDK 17 버전 하나만 사용하지만, 현업에서는 버전별로 JDK를 통틀어 사용하는 경우가 많음. 이러한 경우, 다음과 같이 하나의 폴더 안에서 여러 버전의 JDK를 관리할 수 있음.

 

demo : 프로젝트 작업 공간을 의미하는 폴더

3-1. 환경 변수 설정

- 환경 변수 들어가서 시스템 변수 영역 새로 만들기

3-2. 변수이름 : JAVA_HOME, 변수 값 : 앞서 설치한 ojdk-17 경로 입력

3-3. 시스템 변수 Path에서 %JAVA_HOME%\bin 새로 추가하고 최상단으로 이동

3-4. 시스템 변수 새로 만들기, 변수 이름 : CLASSPATH, 변수 값 : %JAVA_HOME%\lib 입력

3-5. 명령 프롬프트에서 java 명령어 실행, 정상적으로 설정이 되었다면 아래 그림과 같음

4. vsCode에서 확장팩 설치

  • VS CODE Extension
  • Extension Pack for Java
  • Spring boot Tools
  • Spring Initializr Java Support
  • Gradle for Java

5. 프로젝트 생성 방법 2가지

  1. https://start.spring.io/ -> 홈페이지에서 간단하게 생성 후 프로젝트 생성 위치 지정
  2. f1 or Ctrl + Shift + P -> 커맨드 팔레트를 열어서 “Spring initalizr: Create a Gradle Project” 선택 -> 항목 모두 선택 후 프로젝트 생성 위치 지정

               - Spring Boot version 선택 : 3.2.6

 

               - Project language 선택 : Java

 

               - Group ID 등록 : example.com 

                  -  보통 생성하려는 웹페이지 도메인 거꾸로 적음 ex) com.example

 

               - Artifact ID 등록 : demo

                  -  프로젝트 이름

 

               - Packaging type 선택 : JAR

                  -  최종 소스 패키지 타입

 

               - Java Version 선택 : 17

 

               - Dependencies : 필요한 라이브러리 선택

                  -  Spring boot DevTools

                  -  Spring Web

                  -  Lombok

 

*생성 후 설치된 java 버전과 프로젝트 java 버전이 일치하는지 확인해야함! 일치하지 않을 경우 에러 발생*

6. build.gradle 파일에서 프로젝트 설정 항목 확인 가능

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


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


java {
    toolchain {
        languageVersion = JavaLanguageVersion.of(17)
    }
}


configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}


repositories {
    mavenCentral()
}


dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    developmentOnly 'org.springframework.boot:spring-boot-devtools'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}


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

7-1. 간단한 텍스트를 보여주는 샘플 페이지 만들기

  1. java\com\example\demo 경로에 ‘controller’ 폴더 생성
  2. controller 폴더에 ‘HelloController.java’ 파일을 생성
package com.example.demo.controller;


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


@RestController
public class HelloController {


    @RequestMapping(value = "/", method = RequestMethod.GET)
    public String index() {
        return "안녕하세요. demo.example.com에 오셨습니다.";
    }
}
  • @RequestMapping 으로 페이지 유입 url 과 method 를 정의함
  • 슬래쉬(“/”)로 설정했으므로 “localhost:8080” 으로 접속시 index() 메소드로 연결

7-2. Spring Boot가 정상적으로 실행됨

7-3. 실행 결과 확인