Methode getLogger() nicht mehr Mitglied der Logger in log4j2?
Habe ich die log4j-api-2.0.0.jar
und log4j-core-2.0.2.jar
import in meinem build-path. Aber irgendwie ist der folgende code fail:
import org.apache.logging.log4j.core.Logger;
public class TheClass {
private static Logger log = Logger.getLogger(TheClass.class);
...
Und die Fehlermeldung zeigt, dass:
The method getLogger(Class<TheClass>) is undefined for the type Logger
Ich bin einfach so neugierig ist getLogger()
nicht mehr eine gültige Methode im Logger?
InformationsquelleAutor huahsin68 | 2014-09-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Werden Sie feststellen
Logger
nicht mehr erklärt eine solche Methode.log4j version 2 hat einige drastische änderungen. Hier die change-log.
getLogger
scheint umgezogen zu einerLogManager
- Klasse.Hier , wie Sie empfehlen, die migration.
Danke, Hinzugefügt.
Und finden Sie tutorials, die nicht älter als ein Jahr mit guides für die alte version. Schön.
Es ist eine Schande, dass Log4j2 geführt crap Unterstützung für das Programm ändert sich nichts, in der logger-Konfiguration
InformationsquelleAutor Sotirios Delimanolis
Gebe ich ein Beispiel zum besseren Verständnis.
InformationsquelleAutor RajeeV VenkaT
mit neuen Log4J 2, dann müssen Sie zumindest (in meinem Fall), log4j-core-2.8.2, log4j-api-2.8.2 und in einigen anderen Fällen müssen Sie möglicherweise auch die log4j-web-2.8.2.
Also, wenn Sie wollen, um einen Anmeldung, die Sie importieren
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
und endlich Verwendung findet
static final Logger LOGGER = LogManager.getLogger(WebService.class.getName());
Hinweis: vergessen Sie nicht, setzen config-Datei in das root-Verzeichnis des Projekts, andere weisen, die Sie nicht in der Lage sein, um Ihre Protokolle.
Hoffe, dies hilft jemand
Mit freundlichen GRÜßEN
InformationsquelleAutor Ishimwe Aubain Consolateur
Ja, deine Beobachtung ist richtig.Es unterstützt nicht getLogger () - Methode.
Überprüfen Sie diese Dokumentation link aus: http://logging.apache.org/log4j/2.x/log4j-core/apidocs/index.html
Beispiel-tutorial:http://www.javabeat.net/log4j-2-example/
InformationsquelleAutor pd30
Wie bereits in anderen Antworten
Logger
ist jetzt ein interface, und Sie können Logger-Instanzen aus derLogManager
.API ist nun getrennt von der Umsetzung, um dem team die Freiheit, sich zu verändern, die Umsetzung ohne brechen von Benutzer-Codes. Die API wird nur selten ändern, und wenn es ändert, wird es eine 2.x-version, nicht die 2.0.x-version. Dass gesagt, ist es wahrscheinlich eine gute Idee, immer passenden log4j-api und log4j-core-Versionen.
InformationsquelleAutor Remko Popma
Sind Sie mit log4j in der version 2.
InformationsquelleAutor Pranav V R
Verwenden getLogger () - Methode der Klasse, importieren Sie die Logger Klasse
import java.util.logging.Logger;
und verwenden Sie es wie folgt
Und denken Sie daran, diese Methode benötigt ein string argument.
Oder Verwenden Sie Logger aus org.apache.log4j Paket, wie unten zu sehen
InformationsquelleAutor tadtab