Skip to main content

이 버전의 GitHub Enterprise Server는 다음 날짜에 중단됩니다. 2026-04-09. 중요한 보안 문제에 대해서도 패치 릴리스가 이루어지지 않습니다. 더 뛰어난 성능, 향상된 보안, 새로운 기능을 위해 최신 버전의 GitHub Enterprise Server로 업그레이드합니다. 업그레이드에 대한 도움말은 GitHub Enterprise 지원에 문의하세요.

C# 컴파일러가 예기치 않게 실패

MSBuild C# 컴파일이 예기치 않게 실패하는 경우 애플리케이션 프로젝트 파일을 수정해야 할 수 있습니다.

이러한 오류 정보

추적기는 CodeQL C# 컴파일러 호출에 일부 플래그를 삽입하여 모든 구성 요소가 데이터베이스에 CodeQL 빌드되고 포함되도록 합니다. 이로 인해 C# 코드가 분석 중에 CodeQL 예상한 것과 다르게 빌드될 수 있습니다. CodeQL code scanning for compiled languages을(를) 참조하세요.

          `/p:EmitCompilerGeneratedFiles=true`은(는) 삽입된 속성 중 하나이며 빌드 프로세스 중에 컴파일러에서 생성된 파일을 내보냅니다. 이 옵션을 선택하면 컴파일러가 향상된 정규식 지원, 직렬화 및 웹 애플리케이션 뷰 생성 등의 기능을 지원하는 데 사용되는 추가 파일을 생성합니다. 이렇게 생성되는 아티팩트는 보통 컴파일러에 의해 디스크에 기록되지 않지만, 이 옵션을 `true`로 설정하면 파일을 디스크에 기록되도록 강제되어 추출기가 파일을 처리할 수 있습니다.

일부 레거시 프로젝트와 .sqlproj 파일을 사용하는 프로젝트의 경우, 삽입된 /p:EmitCompilerGeneratedFiles=true 속성으로 인해 msbuild에서 예기치 못한 문제가 발생하는 것을 볼 수 있습니다.

문제 원인 확인

"경고를 오류로 처리" 플래그를 설정한 경우 msbuild이(가) 오류를 생성하여 추출이 실패하게 됩니다.

문제 해결

애플리케이션의 프로젝트 파일에 <CompilerGeneratedFilesOutputPath> 요소를 추가해야 합니다. 자세한 내용은 Microsoft Learn의 프로젝트 파일 이해를 참조하세요.