Skip to main content

エラー: "ビルド中にソース コードが見つかりませんでした"

ソース コード CodeQL 見つからない場合は、この問題を解決して、 code scanning 分析のブロックを解除する必要があります。

ワークフローが Error: "No source code was seen during the build" または The process '/opt/hostedtoolcache/CodeQL/0.0.0-20200630/x64/codeql/codeql' failed with exit code 32で失敗した場合は、 CodeQL がコードを監視できなかったことを示します。 これには、次の 6 つの理由が考えられます。

  1. サポートされている言語はありません。 リポジトリには、 CodeQLでサポートされている言語で記述されたソース コードが含まれていない場合があります。 サポートされている言語の一覧を確認し、該当する場合は、 CodeQL ワークフローを削除します。 詳しくは、「CodeQL を使用したコード スキャン」をご覧ください。

  2. 検出された言語の分析可能なコードがない: 自動言語検出により、サポートされている言語が特定されましたが、リポジトリにその言語の分析可能なコードがありません。 一般的な例としては、言語検出サービスが .h ファイルや .gyp ファイルなどの特定のプログラミング言語に関連付けられたファイルを見つけたが、対応する実行可能コードがリポジトリに存在しない場合です。 この問題を解決するには、language マトリクスにある言語のリストを更新し、解析する言語を手動で定義します。 たとえば、次の設定では Go と JavaScript のみを分析します。

    strategy:
      fail-fast: false
      matrix:
        # Override automatic language detection by changing the list below.
        # Supported options are listed in a comment in the default workflow.
        language: ['go', 'javascript-typescript']
    

    詳細については、「CodeQL の高度なセットアップで一部の言語が分析されませんでした」のワークフロー抽出を参照してください。

  3. _コンパイルされた言語のコンパイルに失敗しました:_code scanning ワークフローはコンパイルされた言語 (C、C++、C#、Go、または Java) をコンパイルしようとしますが、コードはコンパイルされませんでした。 ワークフローで言語の build-mode: autobuild を指定する場合、または autobuild ステップが含まれている場合、 CodeQL は適切なビルド メソッドを検出してコードをビルドするためのベスト エフォートを行います。 特定のビルド環境によっては、autobuild プロセスでコードのビルドが成功しない場合があります。 autobuild ステップを削除し、ビルド ステップを手動で含めない場合も、コンパイルが失敗する可能性があります。 ビルド ステップの定義方法の詳細については、「CodeQL code scanning for compiled languages」を参照してください。

  4. キャッシュされたコンポーネントが検出されない: ワークフローでは、コンパイルされた言語 (C、C++、C#、Go、または Java) をビルドして分析用の CodeQL データベースを作成しますが、ビルドの一部はキャッシュされ、パフォーマンスが向上します (Gradle や Bazel などのビルド システムで発生する可能性が最も高くなります)。 CodeQLは、リポジトリ内のデータ フローを理解するためにコンパイラのアクティビティを観察するため、CodeQL分析を実行するために完全なビルドを実行する必要があります。

  5. _ init および analyze ステップ以外でのコンパイル:_ ワークフローでコンパイル型言語 (C、C++、C#、Go、または Java) がビルドされていますが、ワークフローの init および analyze ステップ間でのコンパイルが行われていません。 CodeQL では、コンパイラのアクティビティを監視し、分析を実行するために、これら 2 つの手順の間にビルドが行われる必要があります。

  6. _ CodeQLによってコンパイルが検出されない:_ コンパイルされたコード (C、C++、C#、Go、または Java) は正常にコンパイルされましたが、CodeQLはコンパイラの呼び出しを検出できませんでした。 最も一般的な原因を次に示します。

    • 別のコンテナーでビルド プロセスを実行して CodeQLします。 詳しくは、「コンテナで CodeQL Code scanningを実行する」をご覧ください。
    • デーモンプロセスを使用して、GitHub Actions の外部で分散ビルドシステムによりビルドしている。
    • CodeQL は、使用している特定のコンパイラを認識していません。

特定のコンパイラまたは構成で別の問題が発生した場合は、 GitHub サポート ポータルにお問い合わせください。

ビルド ステップの指定方法の詳細については、「CodeQL code scanning for compiled languages」を参照してください。