我在Maven项目中第一次使用SLF4J,但我无法输出任何东西(它的创建者显然没有订阅“有用的默认行为”理念)。
我在pom.xml中添加了以下内容:
<dependency>
<groupId>com.googlecode.sli4j</groupId>
<artifactId>sli4j-slf4j-simple</artifactId>
<version>2.0</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
我正在使用它:
final Logger logger = LoggerFactory.getLogger(UdpRemoteConnection.class);
...
logger.error("test error");
现在我不需要任何花哨的东西,我只需要它来登录控制台。我该如何启用它?
答案 0 :(得分:2)
我通常使用Maven配置Java项目:
的pom.xml:
...
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>0.9.26</version>
</dependency>
...
src / main / resources / logback.xml或/和src / test / resources / logback.xml:
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
</layout>
</appender>
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>
答案 1 :(得分:1)
您似乎正在使用Sli4j而不是Slf4j 尝试直接使用Slf4j:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
</dependency>
(我使用1.5.11作为slg4j.version,但最新版本是1.6.1)