티스토리 뷰

반응형

Devtools란 ?

devtools는 Spring boot에서 제공하는 개발 편의를 위한 모듈이다.

개발을 하다보면, 코드 수정시 브라우저에서 보여주는 내용도 수정하려면

어플리케이션을 재시작해야 하기 때문에 불편한 점이 많은데

devtools를 이용하면 이러한 불편한 점을 해결할 수 있다.

 

크게 아래의 5가지 기능들을 제공한다고 하는데

  • Property Defaults
  • Automatic Restart
  • Live Reload
  • Global Settings
  • Remote Applications

쉽게 말하면 브라우저로 전송되는 내용들에 대한 코드가 변경되면, 자동으로 어플리케이션을 재시작하여 

브라우저에도 업데이트를 해주는 역할을 한다.

 

자주 사용하는 H2 콘솔로 예를 들면

인텔리제이에서 엔티티에 새로운 필드를 추가하거나 새로운 엔티티를 추가해도

프로젝트를 다시 시작하지 않고 h2 콘솔에서 업데이트된 정보를 볼 수 있다.

 

추가로 H2 데이터베이스를 사용중이라면 자동으로 H2콘솔도 활성화 시켜주는 장점도 있다.

(server(tcp)모드로 h2를 사용할때 콘솔을 활성화 하지 않아도 프로젝트를 실행시킬 수 있다....!!)

 

 

설정방법

1. Dependency에 Devtools를 추가한다.

Gradle이나 Maven 둘중 아무거나 사용해도 좋다.

 

Gradle 사용시

<noMenu/>
dependencies {
    compileOnly("org.springframework.boot:spring-boot-devtools")
}

Maven 사용시

<noMenu/>
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

 

 

2. Advanced Settings 설정

IntelliJ 2021이전에는 registry에 있는 compiler.automake.allow.when.app.running 설정에 체크해 주어야 했지만 

2021 부터는 해당 설정이 레지스트리에서 Advanced Settings으로 옮겨 졌다.

아래의 빨간색 상자안에 있는 체크박스를 체크해주면 된다. 참고링크

 

 

 

3. Build project automatically 체크

Build, Execution, Deployment -> Compiler -> Build project automatically 체크

 

 

반응형

'개발 공부 > Spring' 카테고리의 다른 글

@Autowired와 의존관계 주입방법  (0) 2022.06.17
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함