Skip to main content

Avertissement : dĂ©tection de X fichiers Kotlin dans votre projet qui n’ont pas pu ĂȘtre traitĂ©s sans gĂ©nĂ©ration

Les bases de donnĂ©es CodeQL peuvent ĂȘtre créées pour Java sans gĂ©nĂ©rer le code, mais les fichiers Kotlin sont exclus si le code n’est pas gĂ©nĂ©rĂ©.

À propos de cet avertissement

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

Cet avertissement est signalĂ© lorsque des fichiers Kotlin sont dĂ©tectĂ©s dans un rĂ©fĂ©rentiel qui a exĂ©cutĂ© CodeQL code scanning pour Java Ă  l’aide du mode de gĂ©nĂ©ration de none (configuration par dĂ©faut) ou si vous exĂ©cutez la CodeQL CLI Ă  l’aide de --build-mode none pour un rĂ©fĂ©rentiel contenant des fichiers Java et Kotlin.

Confirmation de la cause de l’avertissement

Cet avertissement s’affiche uniquement lorsque le mode de gĂ©nĂ©ration de none est utilisĂ© pour un rĂ©fĂ©rentiel avec des fichiers Java et Kotlin.

L’action CodeQL et CodeQL CLI prennent en charge un mode de gĂ©nĂ©ration de none pour Java. Cela permet d’activer facilement l’analyse du code Java sans gĂ©nĂ©rer la codebase. Toutefois, les fichiers Kotlin ne sont pas inclus dans la base de donnĂ©es CodeQL rĂ©sultante.

Vous pouvez vĂ©rifier la prĂ©sence de fichiers Kotlin en examinant le rĂ©fĂ©rentiel ou la demande de tirage qui a dĂ©clenchĂ© l’avertissement. Le mode de gĂ©nĂ©ration none est utilisĂ© uniquement dans les circonstances suivantes :

  • Code scanning a Ă©tĂ© activĂ© pour le rĂ©fĂ©rentiel avant l’ajout du code Kotlin et aprĂšs l’introduction du nouveau mode (prĂ©cĂ©demment, il aurait utilisĂ© le mode autobuild).
  • Le workflow CodeQL spĂ©cifie un mode de gĂ©nĂ©ration de none pour le rĂ©fĂ©rentiel (vĂ©rification pour build-mode: none).
  • La CodeQL CLI est appelĂ©e sans --command et avec --build-mode none.

Résolution du problÚme

Vous ne souhaiterez peut-ĂȘtre pas analyser les fichiers Kotlin, auquel cas vous pouvez ignorer le message d’avertissement.

Si vous souhaitez mettre Ă  jour l’analyse pour inclure Ă©galement des fichiers Kotlin, CodeQL devra gĂ©nĂ©rer le code Java et Kotlin.

Configuration par dĂ©faut de l’Code scanning

  1. Attendez que le code Kotlin soit fusionné dans la branche par défaut du référentiel.
  2. Désactivez puis réactivez la configuration par défaut sur la page ParamÚtres de votre référentiel.

Cela dĂ©clenche une nouvelle analyse Ă  l’aide de la dĂ©tection automatique de gĂ©nĂ©ration. Consultez DĂ©finition de la configuration par dĂ©faut pour l’analyse du code et GĂ©nĂ©ration de Java et Kotlin.

Si la détection automatique de génération échoue, vous devez utiliser la configuration avancée avec les commandes de génération appropriées pour que le projet analyse les deux langages.

Configuration avancĂ©e de l’Code scanning

Si vous utilisez déjà la configuration avancée, vous pouvez modifier le workflow CodeQL et modifier le mode de génération pour java-kotlin depuis none vers autobuild pour automatiquement générer votre projet, ou manual pour spécifier vos propres étapes de génération. Génération de Java et Kotlin.

Si vous devez effectuer une conversion de la configuration par défaut à la configuration avancée, vous devez activer la configuration avancée sur la page ParamÚtres de votre référentiel et créer un workflow CodeQL workflow. Vous pouvez ensuite définir un mode de génération manual pour java-kotlin et définir les commandes de génération pour le projet.

ExĂ©cution directe de l’CodeQL CLI

Mettez Ă  jour vos appels pour exĂ©cuter l’CodeQL CLI pour le rĂ©fĂ©rentiel et les demandes de tirage pour remplacer --build-mode none par --build-mode autobuild pour essayer la dĂ©tection automatique de gĂ©nĂ©ration. Si la dĂ©tection automatique de gĂ©nĂ©ration Ă©choue, supprimez l’option --build-mode et incluez une ou plusieurs options --command dĂ©taillant le script de gĂ©nĂ©ration ou les Ă©tapes nĂ©cessaires pour gĂ©nĂ©rer le projet.

Pour aller plus loin