본문으로 건너뛰기

개발 환경

소스 생성기 개발에 필요한 환경을 빠르게 참조할 수 있도록 정리한 부록입니다. 본문 학습 후 환경을 재구성할 때 사용하세요. 각 항목의 상세 설명은 Part 1-01. 개발 환경 설정을 참고하십시오.


도구최소 버전용도
.NET SDK10.0소스 생성기 빌드 및 테스트
Visual Studio 202217.12+IDE (소스 생성기 디버깅 지원)
VS Code + C# Dev Kit최신대안 IDE
Terminal window
# 설치 확인
dotnet --version
# 출력 예: 10.0.100

패키지용도
Microsoft.CodeAnalysis.CSharpRoslyn C# 컴파일러 API (Syntax, Semantic)
Microsoft.CodeAnalysis.Analyzers분석기 개발 규칙 검증

두 패키지 모두 PrivateAssets="all"을 지정하여 소비자 프로젝트로 전이되지 않도록 합니다.


속성설명
TargetFrameworknetstandard2.0모든 IDE/CLI 환경에서 동작하기 위한 필수 타겟
IsRoslynComponenttrue소스 생성기 컴포넌트로 인식
EnforceExtendedAnalyzerRulestrue분석기 패키징 규칙 적용
IncludeBuildOutputfalseNuGet 패키지 배포 시 빌드 출력 제외

프로덕션 프로젝트 (소스 생성기 사용)

섹션 제목: “프로덕션 프로젝트 (소스 생성기 사용)”
<ProjectReference Include="..\MySourceGenerator\MySourceGenerator.csproj"
OutputItemType="Analyzer"
ReferenceOutputAssembly="false" />
속성설명
OutputItemType="Analyzer"분석기/생성기로 인식
ReferenceOutputAssembly="false"런타임 참조 제외 (컴파일 타임만 사용)

테스트 프로젝트 (소스 생성기 디버깅)

섹션 제목: “테스트 프로젝트 (소스 생성기 디버깅)”
<ProjectReference Include="..\MySourceGenerator\MySourceGenerator.csproj"
ReferenceOutputAssembly="true" />

테스트 프로젝트에서는 ReferenceOutputAssembly="true"로 설정하여 디버거가 소스 생성기 내부로 진입할 수 있도록 합니다.


Part 1-01. 개발 환경 설정