VSCode Debug 상세

ZZY·2022년 7월 19일
0

VSCode

목록 보기
1/1
post-thumbnail

참고자료1 : VSCode 공식문서
참고자료2 : pytest 활용?

Error 해결

Error1

내용

평소에 하던대로 VSCode GUI상에서 초록색 재생버튼으로 디버그 실행하니 프로젝트 내에 만들어준 패키지와 모듈을 인식하지 못함

해결

참고자료1 보고 성공!

  • Step.1 작업경로 내에서 다음과 같은 스크립트를 실행한다. (실행하자마자 일시정지됨)
python -m debugpy --listen 5678 --wait-for-client -m pytorchyolo.test_tmp
  • Step.2 설정버튼을 눌러 launch.json파일을 열어준다.
  • Step.3 기존 configurations에 다음과 같은 요소를 복붙하여 디버그 설정을 추가로 생성한다.
{
  "name": "Python: Attach",
  "type": "python",
  "request": "attach",
  "connect": {
    "host": "localhost",
    "port": 5678
  }
}
  • Step.4 위에서 추가한 디버그 설정을 불러온다.
  • Step.5 실행버튼을 누르면 Step.1에서 일시정지 상태였던 스크립트가 실행된다.


더 쉬운 해결법이 있을 것 같으니 시간이 되면 더 찾아보자.







python 실행시 -m 옵션의 의미
(해당 링크의 댓글에 -m옵션 적용시 sys.path에 들어가는 옵션이 달라진다는 내용도 확인)
sys.path란?

※ 참고

python -m debugpy
    --listen | --connect
    [<host>:]<port>
    [--wait-for-client]
    [--configure-<name> <value>]...
    [--log-to <path>] [--log-to-stderr]
    <filename> | -m <module> | -c <code> | --pid <pid>
    [<arg>]...

필수 속성

  • --listen : debugpy로 실행할 디버그 프로세스를 VSCode에 연결하기 위해 호스트와 포트를 설정 (호스트의 디폴트값은 127.0.0.1)
  • 실행할 객체 지정
    <filename> : 경로+파일 형태로 입력 ( dir/file.py )
    -m <module> : 패키지+모듈(확장자 표기를 제거한 파일명) 형태로 입력 ( package.file )

선택 속성

  • --wait-for-client : VSCode GUI상에서 초록색 재생버튼을 누를때 까지 스크립트를 실행시키지 않고 기다림
profile
안녕하세요

0개의 댓글