1.11. 使用其他日志记录 API
Quarkus 依赖于 JBoss Logging 库来满足所有日志记录要求。 假设您使用依赖于其他日志记录库的库,如 Apache Commons Logging、Log4j 或 SLF4J。在这种情况下,从依赖项中排除它们,并使用其中一个 JBoss Logging 适配器。 这在构建原生可执行文件时尤为重要,因为在编译原生可执行文件时可能会遇到类似如下的问题:
Caused by java.lang.ClassNotFoundException: org.apache.commons.logging.impl.LogFactoryImpl
日志记录实施不包括在原生可执行文件中,但您可以使用 JBoss Logging 适配器解决这个问题。 这些适配器可用于流行的开源日志记录组件,如下一章节中所述。
1.11.1. 在应用程序中添加日志适配器
对于不是
jboss-logging
的每个日志记录 API:
添加日志记录适配器库,以确保通过这些 API 记录的消息被路由到 JBoss Log Manager 后端。
对于作为 Quarkus 扩展依赖项的库,这个步骤不需要扩展自动处理它。
Apache Commons Logging:
使用 Maven:
<dependency> <groupId>org.jboss.logging</groupId> <artifactId>commons-logging-jboss-logging</artifactId> </dependency>
使用 Gradle :
implementation("org.jboss.logging:commons-logging-jboss-logging")
Log4j: 使用 Maven:
<dependency> <groupId>org.jboss.logmanager</groupId> <artifactId>log4j-jboss-logmanager</artifactId> </dependency>
使用 Gradle :
implementation("org.jboss.logmanager:log4j-jboss-logmanager")