카테고리 없음
🐞 IntelliJ 완전 정복 시리즈 6편
밥알이
2025. 6. 18. 06:41
디버깅 기능 완전 정복
IntelliJ IDEA는 뛰어난 디버깅 기능을 제공합니다. 단순한 breakpoint 설정부터 조건부 디버깅, Evaluate Expression, HotSwap까지, 개발자의 시간을 아껴주는 기능이 다양하죠.
이 글에서는 실무에서 자주 사용하는 IntelliJ 디버깅 기능을 예제와 함께 정리했습니다.
📌 자주 쓰는 디버깅 기능 요약
기능 | 설명 | 단축키 (Win / Mac) |
---|---|---|
디버그 실행 | 디버깅 모드로 애플리케이션 시작 | Shift + F9 / Ctrl + D |
Step Over | 다음 줄로 이동 (메서드 내부 진입하지 않음) | F8 |
Step Into | 메서드 내부로 진입 | F7 |
Step Out | 현재 메서드 탈출 | Shift + F8 |
Evaluate Expression | 실행 중 변수 또는 표현식 값 확인 | Alt + F8 / ⌥ + F8 |
조건부 Breakpoint | 특정 조건일 때만 중단 | Ctrl + Shift + 클릭 / ⌘ + Shift + 클릭 |
Force Return | 메서드 강제 종료 후 값 반환 | 디버그 창에서 실행 |
🔍 Breakpoint 설정과 활용
디버깅의 기본은 Breakpoint 설정입니다. 코드를 실행 중 해당 줄에서 중단시키고 상태를 확인할 수 있습니다.
- 일반 Breakpoint: 코드 왼쪽 여백 클릭
- 조건부 Breakpoint: Shift 누른 채 클릭 후 조건 입력 (예:
user.getAge() > 20
) - 로그 출력 Breakpoint: 코드 중단 없이 로그 메시지만 출력
💡 Evaluate Expression 사용법
디버깅 중 특정 표현식의 값을 직접 확인하고 싶다면 Evaluate Expression 기능을 사용하세요.
- 디버깅 상태에서 Alt + F8을 누릅니다.
- 입력창에 원하는 표현식 (예:
user.getName()
) 입력 - 즉시 현재 값 확인 가능
조건문이나 함수 호출 결과도 실시간으로 확인할 수 있어 매우 강력합니다.
🔥 HotSwap으로 코드 변경 적용
디버깅 도중 코드 일부를 수정하고 싶다면 HotSwap 기능을 활용해보세요.
- 디버깅 중 코드를 변경
- IDEA 하단에서 “Apply Code Changes” 버튼 클릭
- 애플리케이션 재시작 없이 변경 내용 적용 가능
※ 일부 JVM 환경에서는 제한될 수 있습니다. Spring Boot에서는 대부분 잘 동작합니다.
📎 디버깅 팁 모음
- 디버깅할 때 “Variables” 창과 “Watches” 창 적극 활용
- Smart Step Into (Shift + F7): 람다나 여러 메서드가 한 줄에 있을 때 특정 메서드 진입
- 익명 클래스나 람다 내부 로직도 디버깅 가능
🚀 마무리하며
IntelliJ IDEA의 디버깅 기능을 숙지하면 복잡한 버그를 훨씬 빠르게 해결할 수 있습니다.
처음에는 어려울 수 있지만, 단축키와 패턴을 익히면 마우스 없이 디버깅을 마스터할 수 있어요.
리팩토링과 디버깅을 함께 잘 사용하는 개발자는 실력도, 생산성도 한 단계 높아집니다.
다음 편에서는 코드 템플릿 및 자동완성 기능 완전정복을 주제로, 반복되는 코드를 효율적으로 작성하는 팁을 소개합니다.