Встроенный tomcat не смог сканировать банки из иерархии загрузчика классов

Я недавно пробовал Embedded 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\2.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\2.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>

Как я могу отключить/избежать предупреждений от встроенной банки tomcat?


person user3592502    schedule 17.06.2017    source источник


Ответы (3)


Не думайте, что xml-apis.jar является зависимостью, необходимой для tomcat-embed-core, как показано с помощью иерархия зависимостей.

В случае вашей ошибки убедитесь, что область xml-apis.jar не является "предоставленной", удалите все файлы в папке C:/Users/raghavender.n/. m2/repository/xalan/xalan/ и выполните "mvn clean install", затем проверьте, есть ли xml-apis.jar.

Для веб-приложения Spring с Embedded Tomcat без Spring Boot вы можете обратиться к этот пост.

person junjun    schedule 19.06.2017

вы можете добавить server.tomcat.additional-tld-skip-patterns=*.jar в application.propertiesфайл или server: tomcat: additional-tld-skip-patterns: '*.jar' в application.ymlфайл.

См.: Компонент сканера Jar, < strong>Официальный ответ.

person zmingchun    schedule 07.06.2018
comment
да server.tomcat.additional-tld-skip-patterns=*.jar работает, большое спасибо - person Orlando Alfonso; 28.08.2020
comment
Остерегайтесь stackoverflow.com/a/57543800/9004116 - person It's K; 13.01.2021

В качестве обходного пути в файле catalina.properties поместите следующую строку:

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar
person Yusuf    schedule 17.02.2020