더북(TheBook)

레이어로 분해된 JAR

스프링 부트는 레이어로 나뉜 JAR(layered JAR)1라는 새로운 JAR 레이아웃을 도입했다. 이 포맷에서 /lib와 /classes 폴더가 분리되어 레이어로 분류된다. 이렇게 레이어로 분리한 것은 빌드에 필요한 정보를 남겨 두고 빌드 간 변경될 가능성에 따라 코드를 나누기 위해서다. 이 방법은 빌드팩을 사용하지 않는 경우에 사용할 수 있는 훌륭한 대안이다. 마이크로서비스의 레이어를 추출하려면 다음 단계를 실행한다.

1. pom.xml 파일에 레이어 구성 정보 추가

2. 애플리케이션 패키징

3. layertools JAR 모드로 jarmode 시스템 프로퍼티를 실행

4. Dockerfile 생성

5. 이미지 빌드 및 실행

 

1단계는 pom.xml 파일의 스프링 부트 메이븐 플러그인에 레이어 구성 정보를 추가하는 것이다. 다음 코드 예와 같다.

<plugin>
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-maven-plugin</artifactId> 
    <configuration> 
        <layers> 
            <enabled>true</enabled>
        </layers>
   </configuration>
</plugin>
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.