Details
-
Bug
-
Resolution: Unresolved
-
Major
-
2.0.0-alpha0, 2.0.0-alpha1
-
Linux 64bit, openjdk 11.0.4
SLF4J: 2.0.0-alpha0 (compile-time), 1.7.30 (run-time)
Logging Provider: log4j-slf4j-impl 1.13.3
Description
As I understand http://slf4j.org/manual.html#compatibility it should be possible to compile a library against slf4j-api 2.0.0-alpha0 and at runtime have slf4j-api-1.7.30.jar and a corresponding implementation e.g. log4j-slf4j-impl-1.13.3.jar on the classpath.
However, when using the fluent api, this setup throws whenever a (fluent) Logging statement is hit:
java.lang.NoSuchMethodError: 'org.slf4j.spi.LoggingEventBuilder org.slf4j.Logger.atInfo()'
Is binary compatibility restricted to the same major version number, are alpha versions excluded?
Effectively this seems to force all projects which have dependencies using the Fluent Logging API to also use the alpha logging API.
I really like the the new API, so I hope there's some way to set this up correctly.