메인 다른 VS Code에서 launch.json을 여는 방법

VS Code에서 launch.json을 여는 방법



효과적인 디버깅과 코드 품질은 소프트웨어 개발에서 분리할 수 없는 개념입니다. Visual Studio(VS) Code의 디버깅 기능은 주로 launch.json 파일에 의해 제어됩니다. 이 파일을 통해 개발자는 자신의 비전에 따라 디버깅 설정을 구성하고 관리할 수 있습니다.

  VS Code에서 launch.json을 여는 방법

이 문서에서는 최적의 디버깅을 위해 launch.json 파일을 열고 관리하는 과정을 안내합니다.

Visual Studio Code에서 launch.json 열기

VS Code 디버깅 설정을 구성하고 관리하려면 launch.json 파일에 대한 액세스 권한이 필요합니다. 이 파일은 디버그 사용자 지정에서 중요한 역할을 합니다.

  1. Visual Studio Code를 엽니다.
  2. Ctrl + Shift + P를 눌러 명령 팔레트를 엽니다.
  3. 명령 팔레트에 'Open launch.json'을 입력하고 'Enter'를 누릅니다. 그러면 launch.json 파일이 열립니다.
  4. launch.json 파일이 열리지 않으면 프로젝트의 루트 폴더에 '.vscode' 폴더가 있는지 확인합니다.
  5. 존재하지 않는 경우 사용자 폴더 내에 '.vscode'라는 새 폴더를 만듭니다.
  6. 새 'launch.json' 파일을 만들어 이 폴더에 넣습니다.

launch.json 파일을 활성화하면 구성할 준비가 됩니다.

Launch.json 구조 개요

launch.json은 '버전' 및 '구성' 섹션을 표시합니다. '구성' 섹션은 디버깅 체계를 구성하는 데 사용할 다양한 디버깅 옵션을 포함하는 배열입니다.

Google 시트의 범례에 레이블을 추가하는 방법

'구성' 배열의 각 개체는 디버깅 시나리오를 나타냅니다. 이러한 개체에는 언어, 프로그램 및 디버거 설정과 같은 디버깅 환경을 정의하는 속성이 있습니다.

launch.json 구성에서 볼 수 있는 몇 가지 일반적인 속성은 다음과 같습니다.

  • '이름' – 드롭다운 메뉴에서 구성을 식별하기 위한 독자 친화적인 구성 이름입니다.
  • 'type' – 디버거 유형(예: 'node', 'python' 또는 'cppvsdbg')을 지정합니다.
  • 'request' – 요청 유형을 'launch'(새 인스턴스 시작) 또는 'attach'(디버거를 기존 프로세스에 연결)로 결정합니다.
  • '프로그램' – 디버깅하려는 파일의 파일 경로입니다.
  • 'args' – 디버깅하는 동안 프로그램에 전달할 명령줄 인수의 배열입니다.
  • 'preLaunchTask' – 디버거를 시작하기 전에 실행할 작업입니다.

launch.json 파일 구조를 이해하면 디버깅 환경을 사용자 지정하는 동안 변경할 옵션과 그대로 두어야 할 옵션을 알 수 있습니다.

다른 언어에 대한 시작 설정 구성

시작 설정을 구성하는 단계는 언어에 따라 약간 다를 수 있습니다. 다음은 널리 사용되는 여러 언어에 대한 단계입니다.

자바스크립트와 타입스크립트

  1. 새 launch.json 파일을 만들고 JavaScript의 경우 'node' 또는 TypeScript의 경우 'pwa-node'로 'type' 속성을 구성합니다.
  2. 'request' 속성을 'launch' 또는 'attach'로 설정합니다.
  3. '프로그램' 속성을 사용하여 진입점 파일을 지정해야 합니다.

파이썬

  1. Visual Studio Code용 Python 인터프리터 및 확장을 설치합니다.
  2. 새 launch.json 파일에서 'type' 속성을 'python'으로 설정합니다.
  3. 'request' 속성을 'launch' 또는 'attach'로 구성합니다.
  4. '프로그램' 속성을 사용하여 실행할 Python 파일을 지정합니다.
  5. 기본 위치에 있지 않은 경우 Python 인터프리터의 경로에 'pythonPath' 속성을 추가로 설정해야 할 수 있습니다.

C# 및 .NET 코어

  1. Visual Studio Code용 C# 확장을 설치합니다.
  2. 새 launch.json 파일에서 'type' 속성을 .NET Core의 경우 'coreclr'로, .NET Framework의 경우 'clr'로 설정합니다.
  3. 'request' 속성을 'launch' 또는 'attach'로 구성합니다.
  4. '프로그램' 속성을 사용하여 진입점 파일을 지정합니다.
  5. 필요한 경우 'cwd' 속성을 현재 프로젝트의 작업 디렉토리로 설정합니다.

자바

  1. Java 확장 팩을 설치합니다.
  2. 새 launch.json 파일을 만들고 'type' 속성을 'java'로 설정합니다.
  3. 'request' 속성을 'launch' 또는 'attach'로 구성합니다.
  4. 'mainClass' 속성으로 메인 클래스를 지정합니다.
  5. 'projectName' 속성을 Java 프로젝트의 이름으로 설정합니다.
  6. Java 개발 중에 사용할 Java 라이브러리를 포함하도록 'classpath' 속성을 구성합니다.

구성 레시피 디버깅

다음 섹션에서는 다양한 디버깅 구성 레시피를 다룹니다.

실행 중인 프로세스에 디버거 연결

실행 중인 프로세스에 디버거를 연결하려면:

  • '요청' 속성을 '첨부'로 설정합니다.
  • 프로세스 ID 또는 필터를 선택하여 디버깅할 프로세스를 찾습니다.

원격 애플리케이션 디버깅

원격 애플리케이션 디버깅의 경우:

  • '원격' 유형을 사용하십시오.
  • 호스트의 주소, 포트 및 가능하면 인증 정보를 제공하여 연결을 설정합니다.

단위 테스트 및 테스트 스위트 디버깅

단위 테스트 및 테스트 스위트를 디버깅할 때:

  • 테스트 프레임워크 및 설정을 포함하는 구성을 사용하여 단위 테스트 및 테스트 스위트를 디버그하십시오.
  • 특정 테스트를 대상으로 하기 위해 '프로그램' 또는 '인수' 속성에서 테스트 스위트 또는 개별 테스트 파일을 정의합니다.

환경 변수 전달

launch.json의 'env' 속성은 디버깅하는 동안 애플리케이션에 환경 변수를 전달할 수 있습니다. 이 속성은 설정하려는 환경 변수에 대한 키-값 쌍을 포함하는 개체입니다.

고급 디버깅

디버그 파일에서 좀 더 강력한 기능을 사용하려는 사용자를 위한 몇 가지 고급 디버깅 기술을 살펴보겠습니다.

조건부 중단점 및 로그 지점

조건부 중단점 및 로그 지점은 특정 조건에서만 메시지를 일시 중지하거나 로깅하여 디버깅을 개선합니다. 사용하려면:

  • 중단점 또는 로그점을 설정하려는 줄 번호를 마우스 오른쪽 버튼으로 클릭합니다.
  • '조건부 중단점 추가' 또는 '로그 지점 추가'를 선택합니다.
  • 작업을 트리거할 조건 또는 메시지를 입력합니다.

소스 맵

소스 맵을 사용하면 변환되거나 축소된 코드를 디버그할 수 있습니다.

  • 소스 맵을 사용하려면 launch.json 구성에서 'sourceMap' 속성을 'true'로 설정합니다.
  • 빌드 프로세스가 소스 맵과 변환된 코드를 생성하는지 확인하십시오.

외부 디버거 통합

원하는 경우 gdb 또는 lldb와 같은 외부 디버거 및 도구를 VS Code에 통합할 수 있습니다.

  • 선택한 디버거 확장을 설치합니다.
  • launch.json 파일에서 디버거 설정을 구성합니다.

다중 스레드 응용 프로그램 디버깅

다중 스레드 응용 프로그램을 디버깅할 때 개별 스레드의 실행을 제어할 수 있습니다.

  • 디버깅 세션 중에 스레드를 관리하려면 디버그 사이드바의 '스레드' 보기를 사용하십시오.
  • 각 스레드에 대한 코드 실행을 개별적으로 일시 중지, 재개 또는 단계별로 실행할 수 있습니다.

다중 대상 디버깅

복합 시작 구성을 사용하면 여러 대상을 동시에 디버깅할 수 있습니다. 이 기능을 활용하려면 함께 그룹화할 구성 이름이 있는 'compounds' 어레이를 추가하십시오. 디버그 드롭다운 메뉴에서 복합 구성 이름을 선택하여 실행합니다.

다양한 서비스, 기능 또는 엔드포인트를 대상으로 하는 다중 시작 구성을 구성하여 마이크로서비스 및 서버리스 애플리케이션을 디버깅합니다. 이러한 대상을 함께 실행하려면 복합 실행 구성을 사용하십시오.

다중 루트 작업 영역의 경우 각 폴더에 대해 별도의 launch.json 파일을 만듭니다. 화합물을 사용하여 개별적으로 또는 동시에 프로젝트를 디버깅하려면 각 루트 폴더에 대한 실행 설정을 개별적으로 구성하십시오.

일반적인 launch.json 문제 해결

때때로 디버깅은 자체 버그 세트에 취약합니다. 몇 가지 일반적인 문제와 해결 방법을 살펴보겠습니다.

스키마 유효성 검사 오류

launch.json 파일에 잘못된 속성 또는 값이 있는 경우 스키마 유효성 검사 오류가 발생합니다. 스키마 오류를 수정하려면:

  • 문제점 패널에서 오류 메시지를 검토하십시오.
  • 오류 메시지의 정보에 따라 launch.json 파일을 업데이트합니다.

디버깅 실패

잘못된 실행 설정으로 인해 디버깅 오류가 발생할 수 있습니다.

  • 잘못된 파일 경로에 대한 실행 구성을 확인하십시오.
  • 누락되거나 잘못된 디버거 또는 요청 유형을 확인합니다.
  • 필요에 따라 설정을 업데이트합니다.

시작 구성 문제 진단

시작 구성 문제를 진단하려면 다음을 수행하십시오.

  • 'trace' 속성을 'verbose'로 설정하여 진단 로깅을 활성화합니다.
  • 디버그 콘솔에서 생성된 로그를 검토하여 문제를 식별하고 수정합니다.

launch.json에 대한 팁

다음 팁과 함께 launch.json을 최적으로 사용하십시오.

  • 시작 구성에 의미 있는 이름을 사용하여 쉽게 식별할 수 있도록 합니다. 이 방법은 여러 디버깅 시나리오로 작업할 때 적절한 구성을 빠르게 찾는 데 도움이 됩니다.
  • 프로젝트의 버전 제어 시스템에 launch.json 파일을 포함하여 팀과 시작 구성을 공유합니다. 모든 팀원은 동일한 디버깅 구성 및 설정에 액세스할 수 있습니다.
  • Git과 같은 버전 제어 시스템은 launch.json 파일의 변경 사항을 추적할 수 있습니다. 버전 제어를 사용하여 이전 구성으로 되돌리고 권장 설정을 공유하여 다른 팀 구성원과 공동 작업할 수 있습니다.
  • 프로젝트 요구 사항에 맞는 특정 언어, 디버거 또는 도구를 지원하는 확장 프로그램을 설치합니다. 디버깅 세션 중에 이러한 확장 및 해당 기능을 사용하도록 launch.json 파일을 구성합니다.

디버깅 시작

launch.json의 기능을 활용하여 코딩 스타일에 가장 잘 맞도록 디버깅 환경을 조정할 수 있습니다. 이렇게 하면 코드의 품질과 성능이 향상됩니다.

시작 설정을 얼마나 자주 구성해야 합니까? 구성 팁이 있습니까? 아래 의견 섹션에서 경험을 공유하십시오.

재미있는 기사

에디터의 선택

Windows 8.1 및 Windows 8에서 트랙 패드 (터치 패드)에 대한 Metro 가장자리 스 와이프 및 터치 참 바 제스처를 비활성화하는 방법
Windows 8.1 및 Windows 8에서 트랙 패드 (터치 패드)에 대한 Metro 가장자리 스 와이프 및 터치 참 바 제스처를 비활성화하는 방법
Windows 8.1 및 Windows 8에서 트랙 패드 (터치 패드)에 대한 Metro Edge 스 와이프 및 터치 참 제스처를 비활성화하는 방법
Fate Grand Order에서 희귀 프리즘을 얻는 방법
Fate Grand Order에서 희귀 프리즘을 얻는 방법
FGO에는 플레이어가 서번트(플레이 가능한 캐릭터)를 개선하기 위해 사용하는 여러 유형의 통화가 있습니다. 그들이 얻을 수 있는 희귀 자원 중 하나는 희귀 프리즘으로, 플레이어가 현재 명단에서 필요로 하지 않는 캐릭터를 거의 사용하지 않거나 소모합니다. 이 기사
Instagram은 사진과 비디오 품질을 압축합니까?
Instagram은 사진과 비디오 품질을 압축합니까?
Instagram은 약 10 억 명의 사용자를 자랑하는 가장 큰 소셜 플랫폼 중 하나입니다. 말할 필요도없이, 인스 타 그램에서 처리하는 데이터의 양과 마찬가지로 일일 게시물의 수도 엄청납니다. 많은 사용자가 최근 Instagram에 대한 우려를 표명했습니다.
트위터 스페이스에 가입하는 방법
트위터 스페이스에 가입하는 방법
Twitter 팔로어와 흥미로운 대화를 나누기 위해 Twitter의 오디오 기반 채팅 서비스를 사용하고 싶다면이 기사에서 Twitter 공간에 참여하는 방법을 설명합니다. 트위터 공간의 공식 출시가 예정되어 있지만
Hulu는 무엇이며 어떻게 작동하나요?
Hulu는 무엇이며 어떻게 작동하나요?
Hulu는 수천 편의 무료 영화와 TV 프로그램, 라이브 TV 채널을 제공하는 Disney 소유의 스트리밍 서비스입니다. 여기 당신이 알아야 할 모든 것이 있습니다.
Windows 10에서 화면 보호기 옵션 바로 가기 만들기
Windows 10에서 화면 보호기 옵션 바로 가기 만들기
사용자는 종종 Windows 10에서 화면 보호기 옵션에 액세스하는 방법을 묻습니다. 오늘은이를 직접 여는 특수 바로 가기를 만드는 방법을 살펴 보겠습니다.
Firefox의 새 탭 페이지에 상위 사이트 추가
Firefox의 새 탭 페이지에 상위 사이트 추가
Firefox에서 새 탭 페이지는 이제 검색 창, 상위 사이트, 하이라이트 및 스 니펫과 함께 제공됩니다. Firefox 브라우저의 새 탭 페이지에서 '인기 사이트'섹션에 더 많은 사이트를 추가 할 수 있습니다.