@Nikita07

Почему появляется данная ошибка при сборке проекта на Java?

Помогите разобраться, есть следующая библиотека(Yauaa) и есть описание(Readme) , как воспользоваться ей в своем проекте, я все сделал по инструкии, но при запуске, появялются следующие ошибки
Exception in thread "main" java.lang.ExceptionInInitializerError
    at TestM.main(TestM.java:8)
Caused by: org.apache.logging.log4j.LoggingException: log4j-slf4j-impl cannot be present with log4j-to-slf4j
    at org.apache.logging.slf4j.Log4jLoggerFactory.validateContext(Log4jLoggerFactory.java:49)
    at org.apache.logging.slf4j.Log4jLoggerFactory.newLogger(Log4jLoggerFactory.java:39)
    at org.apache.logging.slf4j.Log4jLoggerFactory.newLogger(Log4jLoggerFactory.java:30)
    at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:53)
    at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:30)
    at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:358)
    at org.apache.logging.slf4j.SLF4JLoggerContext.getLogger(SLF4JLoggerContext.java:39)
    at org.apache.logging.log4j.spi.LoggerContext.getLogger(LoggerContext.java:99)
    at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:599)
    at nl.basjes.parse.useragent.AbstractUserAgentAnalyzerDirect.<clinit>(AbstractUserAgentAnalyzerDirect.java:173)
    ... 1 more

Как их устранить?

P.S.
Файл pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<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>

    <groupId>org.example</groupId>
    <artifactId>Test</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>nl.basjes.parse.useragent</groupId>
            <artifactId>yauaa</artifactId>
            <version>6.0</version>
        </dependency>
    </dependencies>



    <properties>
        <maven.compiler.source>16</maven.compiler.source>
        <maven.compiler.target>16</maven.compiler.target>
    </properties>

</project>


Файл Java
import nl.basjes.parse.useragent.UserAgent;
import nl.basjes.parse.useragent.UserAgentAnalyzer;

public class TestM {
    public static  void main(String[] args)
    {
        UserAgentAnalyzer uaa = UserAgentAnalyzer
                .newBuilder()
                .hideMatcherLoadStats()
                .withCache(10000)
                .build();

        UserAgent agent = uaa.parse("Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11");

        for (String fieldName: agent.getAvailableFieldNamesSorted())
        {
            System.out.println((fieldName + " = " + agent.getValue(fieldName)));
        }
    }
}


Общая картина ошибки
6141997a5a19b720075972.png

Пробовал так, но это не помогло
<dependency>
    <groupId>nl.basjes.parse.useragent</groupId>
    <artifactId>yauaa</artifactId>
    <version>6.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
        </exclusion>
    </exclusions>
</dependency>
  • Вопрос задан
  • 404 просмотра
Решения вопроса 1
xez
@xez Куратор тега Java
TL Junior Roo
Ошибка появляется из-за того, что этой библиотеке нужны зависимости для логирования, а у вас их нет.
Вам надо их не вырезать, добавляя в exclusions, а наоборот добавлять в dependencies
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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