Sobre este aviso
Warning: Detected X Kotlin files in your project that could not be processed without a build. To process these files...
Esse aviso é reportado quando arquivos Kotlin são detectados em um repositório que executou o CodeQL code scanning para Java usando o modo de compilação none
(configuração padrão), ou se você executar a CodeQL CLI usando --build-mode none
para um repositório contendo arquivos Java e Kotlin.
Confirmar a causa do aviso
Esse aviso só é exibido quando o modo de compilação de none
é usado para um repositório com arquivos Java e Kotlin.
A ação do CodeQL e a CodeQL CLI são compatíveis com o modo de compilação de none
para Java. Isso fornece uma maneira fácil de habilitar a análise para código Java sem compilar a base de código. No entanto, arquivos Kotlin não são incluídos no banco de dados CodeQL resultante.
Você pode verificar a presença de arquivos Kotlin observando o repositório ou pull request que disparou o aviso. O modo de compilação none
é usado somente nas seguintes circunstâncias:
- Code scanning foi habilitado para o repositório antes que o código Kotlin fosse adicionado e depois que o novo modo foi introduzido (anteriormente, teria usado o modo
autobuild
). - O fluxo de trabalho do CodeQL especifica um modo de compilação no-build para o repositório (verifique a presença de
build-mode: none
). - A CodeQL CLI é chamada sem um
--command
e com--build-mode none
.
Corrigir o problema
Talvez você não queira analisar os arquivos Kotlin, nesse caso você pode ignorar a mensagem de aviso.
Se você deseja atualizar a análise para incluir os arquivos Kotlin, o CodeQL precisará compilar o código Java e Kotlin.
Configuração padrão da Code scanning
- Aguarde até que o código Kotlin seja mesclado na branch padrão do repositório.
- Desative e reative a configuração padrão na página "Configurações" do seu repositório.
Isso vai disparar uma nova análise usando a detecção automática de compilação. Consulte "Como definir a configuração padrão da verificação de código" e "Complicação de Java e Kotlin".
Se a detecção automática de compilação falhar, será necessário usar a configuração avançada com os comandos de compilação corretos para o projeto, a fim de analisar as duas linguagens.
Configuração avançada da Code scanning
Se você já usa a configuração avançada, edite o fluxo de trabalho do CodeQL e altere o modo de compilação para java-kotlin
de none
para autobuild
para compilar automaticamente o seu projeto, ou manual
para especificar suas próprias etapas de compilação. "Compilação em Java e Kotlin".
Se você precisa converter da configuração padrão para a avançada, siga a configuração avançada na página "Configurações" do seu repositório e crie um fluxo de trabalho do CodeQL. Em seguida, você pode definir um modo de compilação manual
para java-kotlin
e definir os comandos de compilação para o projeto.
Executando a CodeQL CLI diretamente
Atualize suas chamadas para executar o CodeQL CLI para o repositório e pull requests para substituir --build-mode none
por --build-mode autobuild
para tentar a detecção automática de compilação. Se a detecção automática de compilação não for bem-sucedida, remova a opção --build-mode
e inclua uma ou mais opções --command
detalhando o script de compilação ou as etapas necessárias para compilar o projeto.