У меня есть приложение для Java (1.8.0_40) на рабочем столе в проекте Maven. Вот мой pom.xml
для библиотек Hibernate и Logback:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- ... -->
<dependencies>
<!-- ... -->
<!-- Bibliotecas de log -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.2</version>
</dependency>
<!-- Fim - Bibliotecas de log -->
<!-- Banco -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.2.8.Final</version>
</dependency>
<!-- ... -->
</dependencies>
</project>
И вот мой logback.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="LB_STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{dd/MM/yyyy HH:mm:ss.SSS} %-5level {%thread} [%logger{40}] : %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
</appender>
<!-- ... file appenders -->
<logger name="org.hibernate.type" level="ALL" />
<logger name="org.hibernate" level="DEBUG" />
<root level="DEBUG">
<appender-ref ref="LB_STDOUT" level="DEBUG" />
<appender-ref ref="LB_FILE" level="DEBUG" />
<appender-ref ref="LB_FILE_ERRORS" level="ERROR" />
</root>
</configuration>
Когда я запускаю приложение, все мои бизнес-классы регистрируются в консоли NetBeans... example:
08/04/2015 12:31:50.781 INFO {AWT-EventQueue-0} [o.repository.RepositorySysPDVImpl] : Inicializando lista de produtos para exportação.
Но журналы Hibernate игнорируются.
Есть что-то, что мне не хватает? У меня есть аналогичный файл logback.xml
для веб-приложения, и он работает, но для этого настольного приложения это не так.
Я нашел "проблему".
log4j
импортировался с помощью lib внутри моего pom.xml
. После его удаления все остальные библиотеки начали использовать Logback в качестве библиотеки регистрации по умолчанию.
<dependency>
<groupId>com.mandrillapp.wrapper.lutung</groupId>
<artifactId>lutung</artifactId>
<version>0.0.4</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>