Как да накарам SLF4J да изведе някои отчети за регистриране?

Използвам SLF4J за първи път в моя проект Maven, но не мога да го накарам да извежда нищо (създателите му очевидно не се абонират за философията на „полезно поведение по подразбиране“).

Добавих следното към моя 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");

В момента нямам нужда от нищо изискано, трябва ми само за да вляза в конзолата. Как да активирам това?


person sanity    schedule 10.04.2011    source източник


Отговори (2)


Изглежда, че използвате 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)

person Tarlog    schedule 10.04.2011
comment
Ах благодаря И това трябва да влезе в конзолата без допълнителна конфигурация? - person sanity; 10.04.2011
comment
Да, slf4j-simple просто извежда към конзолата, започвайки с информационно ниво и по-високо. Лично аз не смятам, че е много добра идея да го използвам. По-добре е да използвате slf4j-jdk14, за да влезете в Jdk регистратора по подразбиране. - person Tarlog; 10.04.2011

Обичайната ми конфигурация за Java проекти с Maven:

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>

Logback е реализация на slf4j и наследникът на log4j.

person moritz    schedule 10.04.2011