카테고리 없음

intellij에서 hot reload 설정

coens 2024. 9. 11. 12:42

IntelliJ IDEA 최신 버전에서의 자동 빌드 설정 방법

 

  1. 기본 설정:
    • File > Settings (Windows/Linux) 또는 IntelliJ IDEA > Preferences (Mac)로 이동
    • Build, Execution, Deployment > Compiler로 이동
    • Build project automatically 옵션 체크
  2. 고급 설정:
    • File > Settings (Windows/Linux) 또는 IntelliJ IDEA > Preferences (Mac)로 이동
    • Advanced Settings로 이동 (검색창에 "advanced" 입력)
    • Allow auto-make to start even if developed application is currently running 옵션 체크
  3. 실행/디버그 구성 설정:
    • Run > Edit Configurations로 이동
    • 사용 중인 실행 구성 선택
    • On 'Update' action 및 On frame deactivation 옵션을 Update classes and resources로 설정
  4. Gradle 프로젝트 설정 (Gradle 사용 시):
    • File > Settings (Windows/Linux) 또는 IntelliJ IDEA > Preferences (Mac)로 이동
    • Build, Execution, Deployment > Build Tools > Gradle로 이동
    • Build and run using: 및 Run tests using: 옵션을 IntelliJ IDEA로 설정

참고: 설정 후 IntelliJ IDEA를 재시작하면 변경사항이 완전히 적용됩니다.

 

추가적인 팁:

  • Spring Boot DevTools를 사용 중이라면, 대부분의 경우 위의 설정만으로도 충분한 자동 리로드 기능을 얻을 수 있습니다.
  • 여전히 자동 리로드가 원활하지 않다면, 프로젝트를 실행할 때 다음 VM 옵션을 추가해 보세요:-Dspring.devtools.restart.enabled=true
  • Gradle을 사용하는 경우, build.gradle 파일에 다음 내용을 추가하여 DevTools가 항상 클래스패스에 포함되도록 할 수 있습니다:

configurations {
    developmentOnly
    runtimeClasspath {
        extendsFrom developmentOnly
    }
}

 

-Dspring.devtools.restart.enabled=true VM 옵션을 적용하는 방법

IntelliJ IDEA에서

 

  • Run/Debug Configuration 열기
    • 상단 메뉴에서 Run > Edit Configurations 선택
    • 또는 메인 툴바의 실행 구성 드롭다운 메뉴 옆의 Edit Configurations 버튼 클릭
  • 해당 Spring Boot 애플리케이션 구성 선택
    • 왼쪽 패널에서 your실행하려는 Spring Boot 애플리케이션 구성 선택
  • VM options 필드에 옵션 추가
    • Configuration 탭에서 VM options 필드 찾기
    • 다음 옵션 추가: -Dspring.devtools.restart.enabled=true
    • 여러 옵션을 추가할 경우 공백으로 구분
  • 적용 및 확인
    • Apply 버튼 클릭 후 OK 버튼으로 설정 저장
  • 애플리케이션 재시작
    • 변경된 설정을 적용하려면 애플리케이션을 재시작해야 함

application.properties 파일에 추가

  • spring.devtools.restart.enabled=true

Gradle을 사용하는 경우

build.gradle 파일의 bootRun 태스크에 다음과 같이 추가할 수 있습니다:

bootRun {
    jvmArgs = ["-Dspring.devtools.restart.enabled=true"]
}