Как исправить ошибку «NoSuchMethodError» в log4j - PullRequest
0 голосов
/ 05 апреля 2019

Я разрабатываю Java-приложение, которое используетasticsearch. Я использую API упругого поиска в Java. Я получаю ошибку NoSuchMethodError:

java.lang.NoSuchMethodError: org.apache.logging.log4j.Logger.trace (Ljava / языки / Строка; Ljava / языки / объекта;) V

Я включил мой файл pom

 <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>transport</artifactId>
        <version>5.4.2</version>
    </dependency>
    <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>5.4.2</version>
    </dependency>
    <dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongo-java-driver</artifactId>
        <version>3.2.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.3</version>
    </dependency>
    <dependency>
        <groupId>commons-configuration</groupId>
        <artifactId>commons-configuration</artifactId>
        <version>1.10</version>
    </dependency>

    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.3</version>
    </dependency>
</dependencies>

1 Ответ

0 голосов
/ 05 апреля 2019

Пожалуйста, проверьте зависимость Log4j, которая у вас есть на пути к классам. Для упругого поиска 5.4.x вам нужен Log4j 2.8.2 (API и Core), а не 2.3. Смотри https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.4/_log4j_2_logger.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...