2016-02-10 4 views
3

Я обновляю версию log4j в нашем приложении от log4j 1.2.16 до log4j 2.5. У нас много зависимостей, поэтому я использую мост log4j 1.x (log4j-1.2-api.jar), который описан в migration documentation. Он описывает замену старого log4j-1.2.16.jar на log4j-1.2-api.jar. Теперь, однако, когда конкретная зависимость ссылки на приложения запуска, я получаю это сообщение:log4j 2 bridge bridge log4j-1.2-api.jar Отсутствующие классы

java.lang.ClassNotFoundException: org.apache.log4j.SimpleLayout

Я вижу этот класс в log4j -1.2.16.jar, но не в log4j-1.2-api.jar.

Как решить эту проблему? Вот часть моего pom для справки:

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>1.6.1</version> 
     <exclusions> 
      <exclusion> 
       <artifactId>log4j</artifactId> 
       <groupId>log4j</groupId> 
      </exclusion> 
     </exclusions> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-slf4j-impl</artifactId> 
     <version>2.5</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-api</artifactId> 
     <version>2.5</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-web</artifactId> 
     <version>2.5</version> 
     <scope>runtime</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-core</artifactId> 
     <version>2.5</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-1.2-api</artifactId> 
     <version>2.5</version> 
    </dependency> 

ответ

1

Можете ли вы опубликовать трассировку стека? Что-то относится к определенному макету Log4j 1.x, который не будет работать в Log4j 2. Скорее всего, что-то изменяет конфигурацию ведения журнала программно. Этот код нужно будет преобразовать для использования конфигурации Log4j 2 и/или API.