N
N
Nikita072021-09-15 09:58:55
Java
Nikita07, 2021-09-15 09:58:55

Why does this error appear when building a Java project?

Help me figure it out, there is the following library ( Yauaa ) and there is a description ( Readme ) of how to use it in my project, I did everything according to the instructions, but when I start it, the following errors appear

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

How to eliminate them?

P.S. pom.xml
file
<?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 File
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)));
        }
    }
}


The general picture of the error
6141997a5a19b720075972.png

Tried like this, but it did not help
<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>

Answer the question

In order to leave comments, you need to log in

1 answer(s)
D
Dmitry Roo, 2021-09-15
@Nikita07

The error appears due to the fact that this library needs dependencies for logging, and you do not have them.
You do not need to cut them out by adding them to exclusions, but rather add them to dependencies

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question