You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by Ran RanUser <ra...@gmail.com> on 2014/01/16 08:04:42 UTC
compile error sbt / log4j , cannot exclude log4j
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!
Re: compile error sbt / log4j , cannot exclude log4j
Posted by Joe Stein <jo...@stealth.ly>.
"org.apache.kafka" % "kafka_2.10" % "0.8.0" intransitive(),
"log4j" % "log4j" % "1.2.17",
/*******************************************
Joe Stein
Founder, Principal Consultant
Big Data Open Source Security LLC
http://www.stealth.ly
Twitter: @allthingshadoop <http://www.twitter.com/allthingshadoop>
********************************************/
On Thu, Jan 16, 2014 at 1:14 PM, Ran RanUser <ra...@gmail.com> wrote:
> Thanks, but unfortunately same error.
>
> I see in kafka.utils.LoggingClass the import:
>
> import org.apache.log4j.Logger
>
> Is it possible for this class to reference org.slf4j.* instead users
> of Kafka can use their own slf4j compatible logging lib?
>
>
>
>
> On Thu, Jan 16, 2014 at 7:09 AM, Joe Stein <jo...@stealth.ly> wrote:
>
> > try
> >
> > "org.apache.kafka" % "kafka_2.10" % "0.8.0" intransitive()
> >
> > /*******************************************
> > Joe Stein
> > Founder, Principal Consultant
> > Big Data Open Source Security LLC
> > http://www.stealth.ly
> > Twitter: @allthingshadoop <http://www.twitter.com/allthingshadoop>
> > ********************************************/
> >
> >
> > On Thu, Jan 16, 2014 at 2:04 AM, Ran RanUser <ra...@gmail.com>
> wrote:
> >
> > > 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!
> > >
> >
>
Re: compile error sbt / log4j , cannot exclude log4j
Posted by Ran RanUser <ra...@gmail.com>.
Thanks, but unfortunately same error.
I see in kafka.utils.LoggingClass the import:
import org.apache.log4j.Logger
Is it possible for this class to reference org.slf4j.* instead users
of Kafka can use their own slf4j compatible logging lib?
On Thu, Jan 16, 2014 at 7:09 AM, Joe Stein <jo...@stealth.ly> wrote:
> try
>
> "org.apache.kafka" % "kafka_2.10" % "0.8.0" intransitive()
>
> /*******************************************
> Joe Stein
> Founder, Principal Consultant
> Big Data Open Source Security LLC
> http://www.stealth.ly
> Twitter: @allthingshadoop <http://www.twitter.com/allthingshadoop>
> ********************************************/
>
>
> On Thu, Jan 16, 2014 at 2:04 AM, Ran RanUser <ra...@gmail.com> wrote:
>
> > 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!
> >
>
Re: compile error sbt / log4j , cannot exclude log4j
Posted by Joe Stein <jo...@stealth.ly>.
try
"org.apache.kafka" % "kafka_2.10" % "0.8.0" intransitive()
/*******************************************
Joe Stein
Founder, Principal Consultant
Big Data Open Source Security LLC
http://www.stealth.ly
Twitter: @allthingshadoop <http://www.twitter.com/allthingshadoop>
********************************************/
On Thu, Jan 16, 2014 at 2:04 AM, Ran RanUser <ra...@gmail.com> wrote:
> 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!
>