web-dev-qa-db-de.com

Fehler StatusLogger Log4j2 konnte keine Protokollimplementierung finden

Ich versuche, log4j 2 zu implementieren, aber es wird immer der folgende Fehler ausgegeben.

> ERROR StatusLogger Log4j2 could not find a logging implementation.
> Please add log4j-core to the classpath. Using SimpleLogger to log to
> the console...  
> ERROR LogExample This Will Be Printed On Error 
> FATAL LogExample This Will Be Printed On Fatal

Ich habe die im Netz angegebene Lösung ausprobiert. Aber die scheinen nicht für mich zu arbeiten.

Dies ist der code, den ich ausführen möchte.

package demo;

import org.Apache.logging.log4j.LogManager;
import org.Apache.logging.log4j.Logger;

public class LogExample {

    private static final Logger LOG = LogManager.getLogger(LogExample.class);

    public static void main(String[] args) {

        LOG.debug("This Will Be Printed On Debug");
        LOG.info("This Will Be Printed On Info");
        LOG.warn("This Will Be Printed On Warn");
        LOG.error("This Will Be Printed On Error");
        LOG.fatal("This Will Be Printed On Fatal");
        LOG.info("Appending string: {}.", "Hello, World");
    }

}

Projekt und Abhängigkeit in der pom.xml hinzugefügt:

 enter image description here

 enter image description here

Jede Hilfe wird geschätzt. Vielen Dank.

6
Alok

Die Fehlermeldung wurde behoben, indem die Systemeigenschaft für die Konfigurationsdatei log4j2 festgelegt wurde. Unten ist der Code unten.

System.setProperty("log4j.configurationFile","./path_to_the_log4j2_config_file/log4j2.xml");

Logger log = LogManager.getLogger(LogExample.class.getName());
2
Alok