-
[VS Code] pipenv 가상환경에서 디버깅이 되지 않을 때Trouble Shooting 2021. 6. 11. 15:04
최근 pipenv 가상환경을 사용해 Fast API의 이모저모를 탐험해보던 중 디버깅에 어려움을 겪었습니다. 문제는 위 코드를 디버깅해보려던 중 발생했는데, uvicorn 모듈 import에 실패하며 계속 에러에 봉착하는 상황이었습니다.
Uvicorn은 Fast API가 사용하는 서버이고, 가상 환경에 이미 Fast API가 설치되어 있었으므로 import 에러가 날 상황이 아니었습니다.
따라서, 원인은 가상환경을 활성화한 터미널이 아닌 새로운 Python Debug Console 터미널에서 디버깅이 시작되는 부분으로 좁혀졌습니다.
VS Code 에디터의 오른쪽 하단을 살펴보면, 디버깅이 시작되면서 기존에 쓰던 pipenv 터미널이 아닌 새로운 Python Debgug Console 터미널이 열려 그곳에서 디버깅이 시작됩니다. 즉, 가상환경에서 사용하던 모듈과 패키지들이 아닌 기존 전역으로 세팅된 모듈 및 패키지들로 디버깅하게 됩니다.
이 문제를 해결하기 위해서 VS Code가 현재 default로 사용하는 파이썬 인터프리터를 변경해줍니다.
VS Code의 왼쪽 하단 파란색 부분에서 현재 에디터에서 사용되고 있는 Python Interpreter를 확인하고, 이를 클릭하여 원하는 가상환경의 Python Interpreter로 변경합니다. 이 문제의 경우, 이전에 아나콘다를 다운받아 둔 것으로 인해 시스템에 디폴트로 사용되는 Python Interpreter가 아나콘다로 설치한 Python 3.8.5입니다.
따라서, 에디터의 Python Interpreter를 원래 코드를 실행하던 pipenv 가상환경의 Python Interpreter 3.9.5로 변경합니다.
이 후, F5로 디버그 모드에 진입하면 원하는 pipenv 환경에서 디버깅이 잘 수행됩니다.