더북(TheBook)

그레이들 대신 메이븐으로 프로젝트를 빌드하도록 선택하면 Spring Initializr는 코드 2-4와 같이 스프링 부트 메이븐 플러그인을 사용하는 pom.xml 파일을 만든다.3

 

코드 2-4 스프링 부트 메이븐 플러그인과 부모 스타터 사용

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                        http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
 
    <groupId>com.manning</groupId>
    <artifactId>readinglist</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>
 
<name>Reading List</name>
<description>Reading List Demo</description>
 
<parent> <!-- 부모 스타터에서 버전 상속 -->
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.6.RELEASE</version>
    <relativePath/> <!-- 리포지토리에서 부모 검색 -->
</parent>
 
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <java.version>1.8</java.version>
</properties>
 
<dependencies> <!-- 스타터 의존성 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
 
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>
 
    <build>
        <plugins>
            <plugin> <!-- 스프링 부트 플러그인 적용 -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
 
</project>

 

3 역주 

메이븐이 기본 빌드 도구이므로 --build 옵션을 생략하거나 명시적으로 --build maven으로 지정한다. 그레이들 빌드로 초기화한 상태에서 메이븐 빌드를 추가하려면 다음과 같이 --force 옵션을 지정해야 한다.

$ spring init -d=web,thymeleaf,data-jpa,h2 --groupId=com.manning --artifactId=readinglist --name="Reading List" --package-name=readinglist --description="Reading List Demo" --build maven --force readinglist
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.