Как я настраиваю Spring и SLF4J так, чтобы я мог получить вход?

У меня есть знаток и пружинное приложение, что я хочу войти в систему. Я стремлюсь использовать SLF4J.

Я хочу поместить все свои файлы конфигурации в каталог {путь к классу} / конфигурация включая log4j.xml и затем init использование пружинного боба.

например.


    
    
    
        
            classpath:config/log4j.xml
        
    

Однако я получаю это предупреждение и никакой вход.

log4j:WARN Никакой appenders мог быть найден для регистратора (org.springframework.context.support. ClassPathXmlApplicationContext). log4j:WARN инициализируйте log4j систему правильно. log4j:WARN Видят http://logging.apache.org/log4j/1.2/faq.html#noconfig для большего количества информации.

Я погуглил вокруг и не могу найти простой пример при установке этого. Какие-либо идеи?

44
задан Peter Wilkinson 2 August 2010 в 11:53
поделиться

3 ответа

В дополнение к ответу Джатина:

Spring использует ведение журнала Jakarta Commons в качестве API ведения журнала. Чтобы войти в slf4j, вам необходимо убедиться, что commons-logging не находится в пути к классам. jcl-over-slf4j - это jar-файл на замену для общего журналирования.

Если вы используете maven, вы можете определить, откуда берется общий журнал, используя mvn dependency: tree , и исключить его из всех зависимостей, которые требуют этого, используя исключения зависимостей. Возможно, вам придется запустить mvn dependency: tree несколько раз, потому что он показывает только первое появление транзитивной зависимости.

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>${org.springframework.version}</version>
  <exclusions>
    <exclusion>
      <artifactId>commons-logging</artifactId>
      <groupId>commons-logging</groupId>
    </exclusion>
  </exclusions>
</dependency>
46
ответ дан 26 November 2019 в 22:03
поделиться

сохранить файл log4j в пакете по умолчанию

1
ответ дан 26 November 2019 в 22:03
поделиться

Вы найдете пример на https://github.com/mbogoevici/spring-samples/tree/master/mvc-basic/trunk . Вам необходимо включить некоторые зависимости в свой файл POM, чтобы включить ведение журнала.

<!-- Logging -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${org.slf4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${org.slf4j.version}</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${org.slf4j.version}</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
        <scope>runtime</scope>
    </dependency>
27
ответ дан 26 November 2019 в 22:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: