Log4j, Java Logging - это каркасы журналирования (A)
SLF4J, Commons-Logging - каркасно-фасадные каркасы (B)
www.slf4j.org / faq.html # когда
Даже когда вы используете что-либо из списка (B) выше, вам все равно нужно предоставить ему основную фактическую реализацию логгера (которая является чем-то из списка A) для правильной работы.
Так что, если вы делаете библиотеку, которую вы кому-то отправите (и вы не знаете, какие фреймворки они будут использовать из списка A) THEN вам следует перейти к чему-то в списке B ( SLF4J - идеал)
Если вы работаете в автономном приложении, то, по всей вероятности, log4j (из списка А) должен решить вашу цель.