그동안은 Spring Initialzr를 통해서 간편하게 스프링부트 프로젝트를 생성했었습니다. 그리고 지난 포스트에서 그레이들 프로젝트를 생성했었는데요. 이 프로젝트에 스프링 부트
를 추가해서 스프링 부트 프로젝트로 만드는 방법을 알아보도록 하겠습니다.
이전 포스트에서 만든 프로젝트 위에다 만들기 때문에 기본 그레이들 프로젝트가 준비되어있지 않다면 이 포스트를 참조해서 프로젝트를 만들고 진행해주세요.
결론부터 말하자면, build.gradle
에 스프링부트 의존성(라이브러리)을 적어주고 load하면 끝입니다. 간단하죠? 이 과정을 살펴보도록하겠습니다.
그레이들의 기본 설정으로 생성된 build.gradle
입니다. 그레이들 버전이나 생성 설정 등에 따라서 내용이 조금씩 다를 수도 있습니다.
/*
* This file was generated by the Gradle 'init' task.
*
* This generated file contains a sample Java application project to get you started.
* For more details on building Java & JVM projects, please refer to https://docs.gradle.org/8.7/userguide/building_java_projects.html in the Gradle documentation.
*/
plugins {
// Apply the application plugin to add support for building a CLI application in Java.
id 'application'
}
repositories {
// Use Maven Central for resolving dependencies.
mavenCentral()
}
dependencies {
// Use JUnit test framework.
testImplementation libs.junit
// This dependency is used by the application.
implementation libs.guava
}
// Apply a specific Java toolchain to ease working on different environments.
java {
toolchain {
languageVersion = JavaLanguageVersion.of(17)
}
}
application {
// Define the main class for the application.
mainClass = 'org.example.App'
}
스프링 부트를 추가하기 위해서 먼저 plugins
항목에 다음 두 줄을 추가해줍니다.
id 'org.springframework.boot' version '3.2.4'
id 'io.spring.dependency-management' version '1.1.4'
plugins { // Apply the application plugin to add support for building a CLI application in Java. id 'application' id 'org.springframework.boot' version '3.2.4' //여기를 추가! id 'io.spring.dependency-management' version '1.1.4' //여기를 추가! }
id 'org.springframework.boot' version '3.2.4'
는 스프링 부트 애플리케이션을 실행하기 위한 필수적인 플러그인입니다. .jar를 생성하고 스프링 부트 의존성을 관리하는 애플리케이션 구성과 관련된 일을 합니다.
id 'io.spring.dependency-management' version '1.1.4'
는 스프링 부트의 의존성 버전을 관리하는 플러그인입니다. 의존성의 버전을 따로 명시하지 않아도 실행 시점에서 권장되는 적정 버전의 의존성을 사용하도록 만들어줍니다.
스프링 부트를 사용하기 위한 플러그인 설정을 해주었으니, 스프링 부트를 사용하기 위해 의존성(라이브러리)를 추가해주어야겠죠? dependency
항목에 다음 두 줄을 추가해줍니다.
implementation 'org.springframework.boot:spring-boot-starter-web'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
dependencies { // Use JUnit test framework. testImplementation libs.junit // This dependency is used by the application. implementation libs.guava implementation 'org.springframework.boot:spring-boot-starter-web' //여기를 추가! testImplementation 'org.springframework.boot:spring-boot-starter-test' //여기를 추가! }
스프링 부트 웹 프로젝트 개발과 테스트를 위한 의존성을 추가해주었습니다. 위에서 버전 관리를 해주는 플러그인을 설치했기 때문에 여기서는 버전을 명시하지 않습니다.
인텔리제이 기준으로 위 두 설정을 마쳤다면 load를 할 수 있는 메뉴가 나타납니다. 해당 메뉴를 클릭하거나 단축키를 쓰면 추가된 의존성들을 로드하게 되며 그때부터 프로젝트에서 사용이 가능하게 됩니다.
스프링 부트 프로젝트가 되었으니 스프링 부트가 잘 동작하는지 확인해야겠죠? App.java
를 다음과 같이 수정해서 내장 서버가 실행되도록 만들어줍니다.
/*
* This source file was generated by the Gradle 'init' task
*/
package org.example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
그리고 run
으로 실행을 하면 다음과같이 익숙한 스프링 실행 로그가 찍히면서 톰캣 서버가 실행되었다고 나옵니다.
로컬 호스트에 들어가면 접속이 잘 됩니다.
이렇게 그레이들 프로젝트에서 스프링부트 프로젝트로 만드는 방법에 대해서 알아보았습니다.