2016-04-02 2 views
0

Я пишу плагин для Minecraft, который использует Gradle для добавления дополнительного кода в уже созданный фреймворк (Sponge). Когда я пытаюсь использовать аннотацию @ Slf4j от Lombok, единственными уровнями ведения журнала, которые я могу использовать, являются информация и выше. Основываясь на комментарии, который я видел на другом посту, это означает, что он использует простой slf4j, который уже должен быть встроен в структуру, которую я расширяю. Когда я добавляю logger4j в качестве зависимости, slf4j продолжает использовать простой slf4j вместо logger4j. Я хотел бы иметь возможность использовать logger.debug и logger.trace в дополнение к другим методам. Я просто ничего не настраиваю? Как я могу сказать slf4j использовать logger4j вместо простого slf4j?Slf4j, используя простой slf4j вместо logger4j

ответ

0

Если существует более одной реализации slf4j. Он будет поднимать один случайным образом. Поэтому, если вы хотите использовать log4j вместо простого slf4, вы можете удалить simple-slf4j.jar из своего пути к классу.

modre detaile: http://www.slf4j.org/codes.html#multiple_bindings

И если вы хотите использовать их в то же время, вы можете просто использовать log4j непосредственно без SLF4J. Для exmaple:

import org.apache.log4j.*; 
public class LogTest { 
    static Logger logger = Logger.getLogger(LogTest.class.getName()); 
    public static void main(String[] args) { 
    PropertyConfigurator.configure ("src/log4j.properties"); 
    logger.debug("Debug ..."); 
    logger.info("Info ..."); 
    logger.warn("Warn ..."); 
    logger.error("Error ..."); 
} 

}

Смежные вопросы