Importing a class that does not exist fails to report the name of the class that did not exist


  • Type: Defect Defect
  • Status: Closed Closed
  • Priority: Minor Minor
  • Resolution: Not Reproducible
  • Affects Version/s: Release 1.5
  • Fix Version/s: None
  • Component/s: None
  • Labels:
  • Environment:
    1.5.1, OS X


Pop quiz: What Java class is missing from the classpath?

java.lang.NoClassDefFoundError: Could not initialize class
 at java.lang.Class.forName0 (
    java.lang.Class.forName (
    clojure.lang.RT.loadClassForName (
    clojure.lang.RT.load (
    clojure.lang.RT.load (
    clojure.core$load$fn__5018.invoke (core.clj:5530)
    clojure.core$load.doInvoke (core.clj:5529)
    clojure.lang.RestFn.invoke (
    clojure.core$load_one.invoke (core.clj:5336)
    clojure.core$load_lib$fn__4967.invoke (core.clj:5375)
    clojure.core$load_lib.doInvoke (core.clj:5374)
    clojure.lang.RestFn.applyTo (
    clojure.core$apply.invoke (core.clj:619)
    clojure.core$load_libs.doInvoke (core.clj:5413)
    clojure.lang.RestFn.applyTo (
    clojure.core$apply.invoke (core.clj:619)
    clojure.core$require.doInvoke (core.clj:5496)
    clojure.lang.RestFn.invoke ($eval1736$loading__4910__auto____1737.invoke (app.clj:1)$eval1736.invoke (app.clj:1)
    clojure.lang.Compiler.eval (
    clojure.lang.Compiler.eval (
    clojure.lang.Compiler.load (
    user$eval1732.invoke (NO_SOURCE_FILE:1)
    clojure.lang.Compiler.eval (
    clojure.lang.Compiler.eval (
    clojure.core$eval.invoke (core.clj:2852)
    clojure.main$repl$read_eval_print__6588$fn__6591.invoke (main.clj:259)
    clojure.main$repl$read_eval_print__6588.invoke (main.clj:259)
    clojure.main$repl$fn__6597.invoke (main.clj:277)
    clojure.main$repl.doInvoke (main.clj:277)
    clojure.lang.RestFn.invoke ($evaluate$fn__584.invoke (interruptible_eval.clj:56)
    clojure.lang.AFn.applyToHelper (
    clojure.lang.AFn.applyTo (
    clojure.core$apply.invoke (core.clj:617)
    clojure.core$with_bindings_STAR_.doInvoke (core.clj:1788)
    clojure.lang.RestFn.invoke ($evaluate.invoke (interruptible_eval.clj:41)$interruptible_eval$fn__625$fn__628.invoke (interruptible_eval.clj:171)
    clojure.core$comp$fn__4154.invoke (core.clj:2330)$run_next$fn__618.invoke (interruptible_eval.clj:138) (
    java.util.concurrent.ThreadPoolExecutor.runWorker (
    java.util.concurrent.ThreadPoolExecutor$ ( (

If you guess "" you are wrong!

Wait, I'll give you a hint:

  (:use [clojure.string :only [trim-newline]]
        [clojure.pprint :only [code-dispatch pprint with-pprint-dispatch *print-right-margin*]])
  (:import [ StringWriter]
           [org.slf4j MDC MarkerFactory Marker LoggerFactory]
           [java.util.concurrent.locks ReentrantLock]))

Oh, sorry, did that not help?

The correct answer is "org.slf4j.MDC".

Having that information in the stack trace would have saved me nearly an hour. I think it is worth the effort to get that reported correctly.


Gabriel Horner made changes -
Field Original Value New Value
Waiting On hlewisship
Alex Miller made changes -
Labels feedback errormsgs
Alex Miller made changes -
Priority Major [ 3 ] Minor [ 4 ]
Alex Miller made changes -
Status Open [ 1 ] Closed [ 6 ]
Resolution Not Reproducible [ 4 ]


Vote (1)
Watch (2)


  • Created: