Skip to main content

경고: 빌드 없이 처리할 수 없는 프로젝트에서 X Kotlin 파일이 검색됨

CodeQL databases can be created for Java without building the code, but Kotlin files are excluded unless the code is built.

참고: CodeQL을(를) 사용하여 빌드하지 않고 컴파일된 언어를 분석하는 옵션은 현재 베타 버전이며 변경될 수 있습니다. 베타 중에 이 옵션은 Java 코드베이스에 대해서만 지원됩니다.

이 경고 정보

Warning: Detected X Kotlin files in your project that could not be processed without a build. To process these files...

이 경고는 빌드 모드 none(기본 설정)를 사용하여 Java용 CodeQL code scanning를 실행한 리포지토리에서 Kotlin 파일이 검색되거나 Java 및 Kotlin 파일이 포함된 리포지토리에 대해 --build-mode none를 사용하여 CodeQL CLI을(를) 실행하는 경우 보고됩니다.

경고의 원인 확인

이 경고는 Java 및 Kotlin 파일이 모두 있는 리포지토리에 빌드 모드 none가 사용되는 경우에만 표시됩니다.

CodeQL 작업 및 CodeQL CLI은(는) Java에 대한 빌드 모드 none를 지원합니다. 이렇게 하면 코드베이스를 빌드하지 않고도 Java 코드에 대한 분석을 쉽게 사용할 수 있습니다. 그러나 Kotlin 파일은 결과 CodeQL 데이터베이스에 포함되지 않습니다.

경고를 트리거한 리포지토리 또는 끌어오기 요청을 확인하여 Kotlin 파일의 존재를 확인할 수 있습니다. none 빌드 모드는 다음 상황에서만 사용됩니다.

  • Kotlin 코드가 추가되기 전과 새 모드가 도입된 후(이전에는 autobuild 모드를 사용했을 경우) Code scanning이(가) 리포지토리에 대해 사용하도록 설정되었습니다.
  • CodeQL 워크플로는 리포지토리의 none 빌드 모드를 지정합니다(build-mode: none 검사).
  • CodeQL CLI은(는) --command 없이 --build-mode none로 호출됩니다.

문제 해결

Kotlin 파일을 분석하지 않을 수 있습니다. 이 경우 경고 메시지를 무시할 수 있습니다.

Kotlin 파일도 포함하도록 분석을 업데이트하려면 CodeQL에서 Java 및 Kotlin 코드를 빌드해야 합니다.

Code scanning 기본 설정

  1. Kotlin 코드가 리포지토리의 기본 분기 병합될 때까지 기다립니다.
  2. 리포지토리의 "설정" 페이지에서 기본 설정을 사용하지 않도록 설정한 다음 다시 사용하도록 설정합니다.

그러면 자동 빌드 검색을 사용하여 새 분석이 트리거됩니다. "코드 스캔을 위한 기본 설정 구성" 및 "Java 및 Kotlin 빌드"를 참조하세요.

자동 빌드 검색에 실패하는 경우 프로젝트에 대한 올바른 빌드 명령과 함께 고급 설정을 사용하여 두 언어를 모두 분석해야 합니다.

Code scanning 고급 설정

이미 고급 설정을 사용하는 경우 CodeQL 워크플로를 편집하고 java-kotlin의 빌드 모드를 none에서 autobuild로 변경하여 프로젝트를 자동으로 빌드하거나 manual로 변경하여 직접 빌드 단계를 지정할 수 있습니다. "Java 및 Kotlin 빌드."

기본 설정에서 고급 설정으로 변환해야 하는 경우 리포지토리의 "설정" 페이지에서 고급 설정을 사용하도록 설정하고 CodeQL 워크플로를 만들어야 합니다. 그런 다음 java-kotlin에 대한 manual 빌드 모드를 정의하고 프로젝트에 대한 빌드 명령을 정의할 수 있습니다.

직접 CodeQL CLI 실행

리포지토리에 대해 CodeQL CLI를 실행하도록 호출을 업데이트하고 자동 빌드 검색을 시도하기 위해 --build-mode none--build-mode autobuild로 바꾸도록 풀 리퀘스트를 요청합니다. 자동 빌드 검색에 실패한 경우 --build-mode 옵션을 제거하고 프로젝트 빌드에 필요한 빌드 스크립트 또는 단계를 자세히 설명하는 하나 이상의 --command 옵션을 포함하세요.

추가 참고 자료