静的分析 IRX ファイルの生成時にエラーまたは警告が発生する

症状

IRX ファイルの生成時にエラーや警告が発生したり、IRX ファイルの生成が失敗したりすることがあります。IRX ファイルの生成が失敗した場合は、結果として得られるファイルの名前に _failed が付加されます (my_irx_file_failed.irx など)。この場合、IRX ファイルの生成をトラブルシューティングするには、さまざまなオプションがあります。

解決

  • IRX ファイル生成のトラブルシューティングに構成ファイルを使用する

    構成ファイルを使用せずに IRX ファイルを生成する場合は、ファイルの生成が完了しなければ (またはエラーで完了すると)、Static Analyzer コマンド行ユーティリティーが一時構成ファイルを生成します。以降のスキャンには、このファイルを使用できます。このファイルは、ターゲットに関する既知の情報が入った Targets エレメントが含まれるという点で、構成ファイル・テンプレートに似たものになります。ただし、このファイルには <TargetSettings> エレメントも含まれます。このエレメントを変更して情報を追加すると、コマンド行ユーティリティーはその情報を使用して完全な IRX ファイルを生成できます。このファイルは appscan-config.xml という名前で、現行ディレクトリーに保存されます。これは、このファイルが自動的に次のスキャンに使用されることを意味します。

    例えば、検出できない外部の依存関係を含む、ターゲットの IRX ファイルを生成する場合、次のようなメッセージが表示されることがあります。

    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.

    appscan-config.xml ファイルは、次のような内容で生成されます。

    <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> 

    問題を解決するには、<CustomBuildInfo additional_classpath=""/> を更新して org.apache.jasper.* クラスをクラス・パスに追加し、appscan-config.xml ファイルを保存してから、appscan prepare (Windows) または appscan.sh prepare (Linux と macOS) コマンドを再実行します。1 つ以上の JAR ファイルのパスを指定すると、標準の Java クラス・パス構文がサポートされます (例えば、ワイルドカードがサポートされます)。

    既に構成ファイルを使用していて同じ問題が発生した場合、その問題を示すメッセージを受け取ります。このメッセージを使用して既存の構成ファイルを更新してから、コマンドを再実行します。

    構成ファイルについては CLI を使用した IRX ファイル生成の構成で説明しています。

  • IRX ファイルをデバッグ・モードで生成

    CLI から IRX ファイルを生成する場合は、appscan prepare (Windows) または appscan.sh prepare (Linux と macOS) コマンドをデバッグ・オプションを指定して実行できます。これにより、より多くのログ・ファイルが生成されます。

  • IRX ファイルの生成に関連するログ・ファイル

    エラーまたは警告を確認するには、同時に生成されたログ・ファイルを調べることができます。ログ・ファイルは、.zip アーカイブ・ファイルに保存されます。デフォルトでは、このファイルは IRX と同じ場所に保存されます。別の場所を指定するには、appscan prepare (Windows) または appscan.sh prepare (Linux と macOS) コマンドに -l オプションを使用します。.zip ファイルの名前は、生成された IRX ファイルの名前に基づきます。

  • JSP コンパイルの問題

    JSP コンパイルに問題がある場合は、<file_name>_logs.zip に含まれる compile.log でコンパイル・エラーの有無を確認してください。