Java 使用jboss/wildfly 10进行SLF4J日志记录
我有一个Java webapp在WildFly 10服务器上运行。我曾经将以下库作为Maven依赖项:Java 使用jboss/wildfly 10进行SLF4J日志记录,java,eclipse,logging,wildfly,slf4j,Java,Eclipse,Logging,Wildfly,Slf4j,我有一个Java webapp在WildFly 10服务器上运行。我曾经将以下库作为Maven依赖项: <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <groupId>org.apache.logging.log4j</groupId> <artifactId>log
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
org.slf4j
slf4j api
org.apache.logging.log4j
log4j-slf4j-impl
org.apache.logging.log4j
log4japi
org.apache.logging.log4j
log4j型芯
我现在想使用wildfly的内置日志子系统
- 我需要将哪些库添加到我的项目中
- 如何配置standalone.xml中声明的默认日志类别和根日志记录器,以便在“debug”级别记录“com.mycompany”包中的所有内容
- 我正在运行wildfly服务器作为eclipse中的插件。通过使用控制台处理程序,我希望将日志写入Eclipse的控制台
...
<logger category="com.company">
<level name="DEBUG"/>
</logger>
<root-logger>
<level name="DEBUG"/>
<handlers>
<handler name="CONSOLE"/>
<handler name="FILE"/>
</handlers>
</root-logger>
...
。。。
...
您的standalone.xml中的内容是正确的。但是,您包含了太多的slf4j依赖项。slf4j首先是一个日志外观。应用程序中不需要包含实现依赖项
首先,您需要从pom中删除log4j2依赖项。然后将org.slf4j:slf4j api
标记为provided
,因为容器已经为您提供了依赖关系。这应该是您需要做的全部工作。值得注意的是,您需要了解WildFly使用的SLF4J版本。对于WildFly 10,它是1.7.7,您可以在模块/system/layers/base/org/slf4j/main/
中找到JAR。我认为这不重要。slf4j API应与较旧和较新的1.7.x版本的API兼容。