Using :
SBT 13
Scala 2.10.3
Kafka 0.8.0
Getting a long cryptic compile error ending if I exclude log4j:
[error] uncaught exception during compilation:
scala.reflect.internal.Types$TypeError
[trace] Stack trace suppressed: run last
shops-integrationlayer/compile:compile for the full output.
[error] (shops-integrationlayer/compile:compile)
scala.reflect.internal.Types$TypeError: bad symbolic reference. A signature
in Logging.class refers to term log4j
[error] in package org.apache which is not available.
[error] It may be completely missing from the current classpath, or the
version on
[error] the classpath might be incompatible with the version used when
compiling Logging.class.
I reference kafka in SBT via:
"org.apache.kafka" % "kafka_2.10" % "0.8.0" exclude("org.slf4j",
"slf4j-simple") exclude("log4j", "log4j") exclude("javax.jms", "jms")
exclude("com.sun.jdmk", "jmxtools") exclude("com.sun.jmx", "jmxri")
I exclude org.slf4j-slf4j-simple and log4j-log4j because my project is
already using slf4j-api and logback (instead of log4j). Is there a reason
Logging.class references log4j directly instead of the slf4j-api?
How can log4j be excluded here?
Thank you!