본문 바로가기
개발 환경 & 생산성 도구

VSCode 디버깅 안 될 때 답답하시죠? 현직 개발자가 정리한 5분 체크리스트

by CodeByJin 2026. 4. 23.
반응형

코드를 다 짰는데 브레이크포인트(빨간 점)가 안 걸리거나, 디버그 버튼을 눌러도 묵묵부답일 때의 그 당혹감은 말로 다 못 합니다. "분명히 어제까지는 잘 됐는데 왜 이럴까?" 싶어 식은땀이 나기도 하죠. 저도 연차는 쌓여가지만, 여전히 설정 꼬임 앞에서는 한없이 작아지곤 합니다.

특히 VSCode는 업데이트가 워낙 잦아서 설정 파일 형식이 미세하게 바뀌거나 확장 프로그램끼리 충돌하는 일이 흔합니다. 단순한 오타 문제일 수도 있지만, 내부 엔진의 경로 인식 문제인 경우도 많거든요. 오늘은 제가 현장에서 겪었던 수많은 삽질을 기반으로, 디버깅이 먹통일 때 가장 먼저 확인해야 할 핵심 포인트를 정리해 드리겠습니다.

왜 내 브레이크포인트는 회색으로 변하면서 무시당할까?

가장 흔하게 겪는 증상 중 하나가 실행은 되는데 제가 찍어둔 중단점에서 멈추지 않고 그냥 지나쳐버리는 현상입니다. 이럴 때는 보통 '소스 맵(Source Maps)'이나 '경로 설정'이 꼬여 있을 확률이 90% 이상입니다.

브라우저나 런타임이 실행하는 코드와 VSCode 편집기에서 보고 있는 코드가 서로 다른 위치라고 판단하기 때문이죠. 경험상 프로젝트 루트 폴더를 VSCode로 직접 열지 않고 상위 폴더를 열었을 때 이런 경로 불일치가 자주 발생합니다. 반드시 작업 중인 프로젝트의 최상위 루트에서 VSCode를 실행했는지 확인해 보세요.

VSCode 디버깅 해결 방법 - 생성형 AI 이미지

VSCode 디버깅 환경 점검을 위한 4단계 체크리스트

문제가 생겼을 때 무작정 구글링부터 하기보다는 아래 순서대로 하나씩 짚어보는 것이 시간을 아끼는 지름길입니다. 제가 실제로 디버깅이 안 될 때 머릿속으로 돌리는 회로이기도 합니다.

1. launch.json 파일의 '프로그램 경로' 재검토

디버깅의 심장은 .vscode 폴더 안의 launch.json 파일입니다. 여기서 'program' 항목이나 'args' 항목에 오타가 없는지, 혹은 현재 파일($file)을 실행하도록 되어 있는지 체크해야 합니다.

가끔 환경 변수가 로드되지 않아 실행 파일 자체를 못 찾는 경우도 있는데, 이럴 때는 절대 경로를 직접 입력해서 테스트해보면 원인이 경로 문제인지 금방 알 수 있습니다. 저는 환경 설정이 꼬이면 아예 이 파일을 삭제하고 VSCode가 추천하는 기본 설정으로 다시 생성하곤 하는데, 이게 의외로 직빵입니다.

2. 확장 프로그램(Extensions) 충돌 및 업데이트 확인

VSCode는 확장 프로그램 덕분에 강력하지만, 반대로 얘들 때문에 망가지기도 합니다. 특히 Python이나 C++, Go 같은 언어별 디버거 확장 프로그램 버전이 VSCode 본체 버전과 맞지 않으면 브레이크포인트가 작동하지 않을 수 있습니다.

최근에 업데이트된 확장 프로그램이 있다면 'Disable' 시킨 뒤 기본 디버거로 테스트해 보세요. 작년에 특정 언어 팩 업데이트 이후 디버깅 속도가 현저히 느려졌던 적이 있는데, 이전 버전으로 롤백하니 바로 해결되더군요. 무조건 최신 버전이 답은 아닙니다.

3. 런타임 및 컴파일 옵션 점검

소스 코드를 빌드해서 실행하는 언어(Java, TypeScript 등)라면 컴파일 결과물에 디버깅 정보가 포함되어 있는지 확인해야 합니다. 예를 들어 TypeScript라면 tsconfig.json 파일에서 "sourceMap": true 옵션이 켜져 있어야 VSCode가 컴파일된 JS 파일에서 소스 코드로 위치를 역추적할 수 있습니다.

컴파일된 파일(.js)만 있고 매핑 파일(.map)이 없다면 VSCode는 어디서 멈춰야 할지 갈피를 못 잡습니다. "왜 안 멈추지?"라고 화내기 전에 내 빌드 결과물에 지도가 포함되어 있는지부터 살펴봐야 합니다.

4. 좀비 프로세스 강제 종료

가끔 디버깅을 중단했는데 실제 프로세스는 백그라운드에서 살아있는 경우가 있습니다. 이 상태에서 다시 디버깅을 시작하면 포트 충돌(Port Conflict)이 나면서 먹통이 됩니다.

작업 관리자나 터미널에서 실행 중인 node, python, java 관련 프로세스를 싹 정리하고 다시 시도해 보세요. 이건 팁인데, 가끔은 VSCode 자체를 완전히 종료했다가 다시 켜는 것만으로도 내부 캐시가 정리되면서 해결되는 '기적'이 일어나기도 합니다.

주요 언어별 디버깅 환경 비교 및 권장 설정

확인 항목Node.js / JSPythonJava / Spring
핵심 설정sourceMap: trueInterpreter 선택Language Support 확장
자주 발생하는 원인포트 9229 점유가상환경(venv) 미적용빌드 도구(Maven/Gradle) 꼬임
해결 난이도낮음보통높음

표를 보시면 아시겠지만, Node.js는 설정이 비교적 단순하지만 Java 계열은 빌드 도구와 연동되는 부분이 많아 복잡합니다. 내 환경이 어디에 속하는지 파악하고 접근하는 게 효율적이죠.

당신에게 필요한 해결책은?

모든 상황에 맞는 정답은 없습니다. 하지만 본인의 숙련도와 프로젝트 성격에 따라 우선순위는 정해져 있죠.

  • 입문자/학생: 설정 파일(launch.json)을 건드리기보다 VSCode 왼쪽 하단의 인터프리터나 런타임 버전이 제대로 설치되어 있는지부터 보세요. 의외로 언어 자체가 안 깔려 있는 경우도 있습니다.
  • 현업 개발자: 도커(Docker)나 원격(Remote) 환경에서 디버깅 중이라면 네트워크 포트 포워딩 설정을 의심해야 합니다. 컨테이너 내부 포트와 VSCode가 통신하는 포트가 어긋나면 죽어도 안 연결됩니다.
  • 시간이 급한 분: 복잡한 설정 다 버리고 그냥 console.log나 print로 원시적인 디버깅을 하세요. 설정을 고치느라 1시간을 쓰는 것보다 10분의 로그 확인이 빠를 때가 많습니다.

개인적으로 저는 디버깅 설정이 10분 넘게 해결 안 되면 일단 컴퓨터를 끕니다. 차 한 잔 마시고 와서 다시 보면 '아, 대문자를 소문자로 썼네' 같은 어처구니없는 실수가 눈에 들어오거든요. 기계는 거짓말을 하지 않습니다. 거짓말을 하는 건 항상 제 손가락과 고정관념이더군요.

오늘 정리해 드린 체크리스트가 여러분의 퇴근 시간을 1분이라도 앞당겨 주길 바랍니다. 만약 이 방법들로도 해결이 안 된다면 에러 메시지 전문을 복사해서 공식 문서의 'Issue' 탭을 뒤져보는 걸 추천합니다. 2026년 현재도 대부분의 문제는 이미 누군가 겪었던 일이니까요.

VS Code 확장 프로그램 많이 깔면 무거워지는 진짜 이유와 최적화 비법

사실 이 부분이 가장 번거로우시죠? 코딩 좀 편하게 해보려고 하나둘 설치한 익스텐션이 어느덧 수십 개를 넘어가면, 어느 순간부터 VS Code가 예전 같지 않게 굼떠지기 시작합니다. 처음에는 기

byteandbit.tistory.com

반응형