嵌入式 tomcat 无法从类加载器层次结构中扫描 jar

Embedded tomcat giving failed to scan jars from classloader hierarchy

我正在试用嵌入式 tomcat 版本 8.0.15。将 maven 依赖项下载到我的项目中。

创建必要的上下文和实例。 Tomcat 服务器正常运行。 但我收到以下警告

Jun 17, 2017 9:50:44 PM org.apache.tomcat.util.scan.StandardJarScanner scan 
WARNING: Failed to scan  [file:/C:/Users/raghavender.n/.m2/repository/xalan/xalan/2.7.2/xercesImpl.jar] from classloader hierarchy
java.io.FileNotFoundException:C:\Users\raghavender.n\.m2\repository\xalan\xalan.7.2\xercesImpl.jar (The system cannot find the file specified)
WARNING: Failed to scan [file:/C:/Users/raghavender.n/.m2/repository/xalan/xalan/2.7.2/xml-apis.jar] from classloader hierarchy
java.io.FileNotFoundException: C:\Users\raghavender.n\.m2\repository\xalan\xalan.7.2\xml-apis.jar (The system cannot find the file specified)

<!-- https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-core -->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-core</artifactId>
    <version>8.5.15</version>
</dependency>

我怎样才能 disable/avoid 来自嵌入式 tomcat jar 的警告?

不要以为xml-apis.jartomcat-embed-core[=需要的依赖26=] 如图所示 dependency hierachy.

对于您的错误,请确保 xml-apis.jar 的范围不是“provided”,删除 C:/Users/raghavender.n/.m2/repository/xalan/xalan/ 下的所有文件并执行“mvn clean install”然后检查如果 xml-apis.jar 在那里。

对于 Spring 嵌入式 Tomcat 没有 Spring 引导的 Web 应用程序,您可以参考 this post

你可以添加 server.tomcat.additional-tld-skip-patterns=*.jar application.properties 文件中或 server: tomcat: additional-tld-skip-patterns: '*.jar' application.yml 文件中。

参考:The official reply.

对于解决方法,在 catalina.properties 文件中放入以下行:

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar