Des erreurs ou des avertissements s'affichent lors de la génération d'un fichier IRX d'analyse statique
Symptôme
Lorsque vous générez un fichier IRX, vous pouvez recevoir des erreurs ou des avertissements, ou la génération du fichier IRX peut échouer. Lorsque la génération du fichier IRX échoue, le nom du fichier obtenu est suivi de _failed (par exemple, my_irx_file_failed.irx). Dans ce cas, vous disposez de plusieurs options pour résoudre le problème de génération du fichier IRX.
Résolution
- Utiliser un fichier de configuration pour résoudre le problème de génération du fichier IRX
Si vous générez un fichier IRX sans utiliser de fichier de configuration et que la génération échoue (ou que le fichier est généré mais avec une erreur), l'Utilitaire de ligne de commande Static Analyzer génère un fichier de configuration temporaire que vous pourrez utiliser pour des examens ultérieurs. Ce fichier ressemble au modèle de fichier de configuration dans le sens où il contient un élément
Targets
avec les informations connues concernant vos cibles. Cependant, le fichier contient également un élément<TargetSettings>
que vous pouvez modifier en ajoutant des informations qui permettront à l'Utilitaire de ligne de commande de générer un fichier IRX complet. Ce fichier est intituléappscan-config.xml
et il est enregistré dans le répertoire actuel. Cela signifie que le fichier sera automatiquement utilisé pour le prochain examen.Par exemple, lors de la génération d'un fichier IRX pour une cible contenant des dépendances externes qui ne peuvent pas être localisées, vous pouvez recevoir un message tel que celui-ci :
C:\myTargetDirectory>appscan prepare An IRX file was created, but it may be incomplete. C:\myTargetDirectory\myTarget.jar requires the following packages: org.apache.jasper.* An appscan-config.xml file was created in: C:\myTargetDirectory\appscan-config.xml Please update the file and rerun the command.
Le fichier
appscan-config.xml
qui est généré est similaire à ceci :<Configuration> <Targets> <Target outputs-only="true" path="C:\myTargetDirectory"/> </Targets> <Settings/> <TargetSettings> <Target path="C:\myTargetDirectory\myTarget.jar"/> <!--Please add the path of the following dependencies to the attribute "additional_classpath" below, separated by semi-colon. org.apache.jasper.*--> <CustomBuildInfo additional_classpath=""/> </Target> </TargetSettings> </Configuration>
Pour résoudre le problème, mettez à jour
<CustomBuildInfo additional_classpath=""/>
pour inclure les classes org.apache.jasper.* dans le chemin des classes, enregistrez le fichierappscan-config.xml
, puis réexécutez la commandeappscan prepare
(Windows™) ou la commandeappscan.sh prepare
(Linux™ et macOS). Lorsque vous indiquez le chemin d'accès aux fichiers JAR, la syntaxe standard des chemins d'accès aux classes Java™ est prise en charge (par exemple, les caractères génériques sont reconnus).Si vous rencontrez des problèmes similaires tandis que vous utilisez un fichier de configuration, vous recevez un message qui fait part de ces problèmes. Utilisez ce message pour mettre à jour votre fichier de configuration existant, puis exécutez à nouveau la commande.
Le fichier de configuration est décrit dans Configuration de la génération de fichier IRX avec l'interface de ligne de commande.
- Générer des fichiers IRX en mode de débogage
Si vous générez un fichier IRX à partir de l'interface de ligne de commande, vous pouvez utiliser la commande
appscan prepare
(Windows™) ou la commandeappscan.sh prepare
(Linux™ et macOS) avec une option de débogage. Cela donne lieu à la génération de fichiers journaux supplémentaires. - Fichiers journaux associés à la génération de fichier IRX
Pour afficher des erreurs ou des avertissements, vous pouvez consulter les fichiers journaux qui sont également générés. Les fichiers journaux sont sauvegardés dans un fichier d'archive .zip. Par défaut, le fichier est enregistré au même emplacement que votre fichier IRX. Vous pouvez également spécifier un autre emplacement en utilisant l'option
-l
de la commandeappscan prepare
(Windows™) ou de la commandeappscan.sh prepare
(Linux™ et macOS). Le nom du fichier .zip se base sur le nom du fichier IRX généré. - Problèmes avec la compilation JSP
En cas de problème au moment de la compilation JSP, consultez le fichier
compile.log
dans<file_name>_logs.zip
pour y rechercher les éventuelles erreurs de compilation.