[IntelliJ] Hot Swapping을 위한 Spring Loaded 설정
- Spring Loaded를 사용하여 컨테이너 재시작 없이 자바 클래스를 리로드하여 클래스 변경사항을 적용할 수 있음
- 기존
Hot Code Replacement(HCR)
가 메소드 바디 변경만 허용했다면(즉, 메서드 시그니처는 그대로 유지해야함) Spring Loaded
는 메서드, 필드, 생성자, 어노테이션 변경까지 가능하게 해줌
build.gradle
설정
// 1. 외부 라이브러리(jar)를 스크립트의 클래스패스에 추가
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:1.3.8.RELEASE"
classpath 'org.springframework:springloaded:1.2.0.RELEASE'
}
}
// 2. 'idea' 플러그인 적용
plugins {
id 'idea'
}
// 3. 'idea' 플러그인 설정
idea {
module {
inheritOutputDirs = false
outputDir = file("$buildDir/classes/main/")
}
}
Comments