Ich verwende log4j zum Schreiben von Protokollen, wenn Testautomatisierung ausgeführt wird.Stapelüberlauffehler beim Schreiben des Protokolls mit log4j
Hier ist meine Methode log zu schreiben:
public class Log {
private static Logger Log = Logger.getLogger(Log.class.getName());
public static void info(String message)
{
Log.info(message);
}
}
Aber immer, wenn ich es verwenden, wird der Stack-Überlauf-Fehler wie unten geworfen:
Aufruf der Methode:
Log.info("Click action is performed on My Account link");
Fehler:
java.lang.StackOverflowError at
helpers.Log.info(Log.java:21) at
helpers.Log.info(Log.java:21) at
helpers.Log.info(Log.java:21) at
helpers.Log.info(Log.java:21)
Kann mir bitte jemand helfen?
Hinweis: die Verwendung der gleichen Namen überall für sehr unterschiedliche Objekte und Klassen ist eine wirklich schlechte Idee; weil es zu so interessanten Problemen führen kann, wie Sie es gerade tun ... gerade jetzt. Außerdem: bitte lesen Sie über Java-Kodierung Stil Konventionen. Hätten Sie beispielsweise Ihren 'Logger'-Objekt' Logger' aufgerufen (anstatt ihn 'Log' zu nennen, hätten Sie dieses Problem ebenfalls vermieden). Also: Feld-/Elementnamen beginnen mit Kleinbuchstaben! – GhostCat