管理第三方 Java 和 .NET 排除

缺省情况下,在 IRX 文件生成期间不会扫描第三方 Java 和 .NET 代码。可通过遵循本主题中的以下说明来管理被排除的第三方代码。

关于此任务

为代码生成 IRX 文件时,将排除第三方代码,以便评估不包含您不想分析的代码的信息和结果。要修改被排除的内容,请遵循本主题中的步骤。但如果想要在扫描时包含第三方代码,请参阅以下主题:

过程

  1. 找到抽取的 SAClientUtil_<version>_<os>.zip 文件的 config 目录(其中 <version>Command Line Utility 的当前版本)。
  2. 在此目录中,找到 dot_net.exclusions (.NET) 或 java.exclusions (Java) 文件。
    注: 该目录中的其他 .exclusions 文件是试验性的,修改它们将不会影响第三方排除。
  3. 在文本编辑器中打开文件,将看到它是以下格式的 XML 语句:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <Exclusions>
      <packages>
        <package name="package_name"/>
      </packages>
      ...
    </Exclusions>
  4. 编辑文件以添加要排除的软件包。
    注:
    • 指定的软件包名称将与具有相同前缀的所有软件包匹配(它们被视为后跟通配符一般)。例如,如果您添加 <package name="com.mycompany.common"/> 作为排除,将排除 <package name="com.mycompany.common.action1"/><package name="com.mycompany.common.action2"/>
    • 只有添加到 <packages> 容器的条目会影响第三方排除。添加类和方法将不会影响排除。
  5. 保存文件,然后为源代码生成 IRX 文件。

下一步做什么

如果要修改排除文件,应参照以下最佳实践:
  • 保留已修改的排除文件的备份。特别请记住,如果升级到 Static Analyzer Command Line Utility 的更新版本,将下载不包含更新的排除文件版本。更新 Command Line Utility 时,保留已修改的排除文件的副本,然后将它们复制到新的 Command Line Utility
  • 保留 XML 条目的单个块中的修改,以便在需要时可轻松地复制和粘贴这些修改。