Jar 扫描器组件

目录

简介

Jar 扫描器元素表示用于扫描 Web 应用程序以查找 JAR 文件和类文件目录的组件。它通常在 Web 应用程序启动期间使用,以识别必须作为 Web 应用程序初始化的一部分进行处理的配置文件,例如 TLD 或 web-fragment.xml 文件。

Jar 扫描器元素可以嵌套在 Context 组件中。

例如,您可以在扫描 jar 文件时包含引导类路径

<Context>
  ...
  <JarScanner scanBootstrapClassPath="true"/>
  ...
</Context>

如果没有包含 Jar 扫描器元素,则会自动创建默认的 Jar 扫描器配置,这足以满足大多数要求。

属性

通用属性

Jar 扫描器的所有实现都支持以下属性

属性 说明
className

要使用的实现的 Java 类名称。此类必须实现 org.apache.tomcat.JarScanner 接口。如果未指定,则将使用标准值(如下定义)。

标准实现

Jar 扫描器的标准实现是 org.apache.tomcat.util.scan.StandardJarScanner。它支持以下附加属性(除了上面列出的通用属性之外)

属性 说明
scanAllDirectories

如果为 true,将检查类路径上找到的任何目录,以查看它们是否是展开的 JAR 文件。默认值为 false

Tomcat 通过查找 META-INF 子目录来确定目录是否是展开的 JAR 文件。仅当 META-INF 子目录存在时,该目录才被假定为展开的 JAR 文件。请注意,对于对 @HandlesTypes 注释进行匹配的扫描,将扫描所有目录,而不管是否存在 META-INF 子目录。

scanAllFiles

如果为 true,将检查类路径上找到的任何文件,以查看它们是否是 Jar 文件,而不是依赖于文件扩展名为 .jar。默认值为 false

scanClassPath

如果为 true,除了 Web 应用程序之外,还将扫描完整的 Web 应用程序类路径,包括共享和公共类加载器以及系统类路径(但不包括引导类路径),以查找 Jar 文件。默认值为 true

scanBootstrapClassPath

如果 scanClassPathtrue,并且此项为 true,还将扫描引导类路径以查找 Jar 文件。默认值为 false

scanManifest

如果为 true,将扫描找到的任何 JAR 的清单文件以查找其他类路径条目,并将这些条目添加到要扫描的 URL。默认值为 true

嵌套组件

Jar 扫描过滤器 可以嵌套在 Jar 扫描器 元素内。

特殊功能

没有特殊功能与 Jar 扫描器 元素相关联。