log4j - ClassCastException :(

0

Hej, już od jakiegoś czasu chodziła za mną chęć nauczenia się pracy z log4j-em. Dzisiaj postanowiłem do tego przysiąść.
Z http://logging.apache.org/log4j/2.x/download.html pobrałem "Apache Log4j 2 binary (zip)" po czym rozpakowałem. W Eclipsowym projekcie w Build Path-e dodałem nową bibliotekę, do której wrzuciłem wszystkie jar-y z rozpakowanego zip-a. Niestety już przy takim kodzie wywala błąd:

import org.apache.log4j.Logger;


public class Main
{

	public static final Logger LOGGER = Logger.getLogger(Main.class.getName());
	
	public static void main(String[] args)
	{
		
	}

}

Konkretnie, najpierw wyskakuje okienko z komunikatem "A Java Exception has occurred" a w konsoli:

Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.ClassCastException: org.apache.logging.slf4j.SLF4JLoggerContext cannot be cast to org.apache.logging.log4j.core.LoggerContext
at org.apache.log4j.Logger.getLogger(Logger.java:37)
at Main.<clinit>(Main.java:7)

Po wciśnięciu linka "Logger.java:37" dostaję komunikat: "37 is not a valid line number in org.apache.log4j.Logger"

Będę wdzięczny za pomoc w rozwiązaniu tego problemu.

Jeszcze tak przy okazji spytam, czy wie ktoś, czy istnieje efektywniejszy sposób dopinania javadoców do log4j-a niż rozpakowywanie ich jar-ów i podpinanie pod odpowiednie jar-y z klasami?

1

Możliwe problemy:

  1. Eclipse dorzucił "od siebie" SLF4J'a który jest niekompatybilny z tą wersją.
  2. W tej binarce jest sporo plików .jar. Dorzuciłeś wszystkie, czy któreś konkretne? Podeślij listę, ewentualnie dodaj tylko dwa pliki: log4j-api-2.0.jar oraz log4j-core-2.0.jar
0

Wrzucenie tylko log4j-core-2.0.jar, log4j-api-2.0 nie pomogło, ale po dorzuceniu log4j-1.2-api-2.0 już śmiga bez reszty jar-ów. Dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1