Fork me on GitHub
#juxt
<
2018-11-06
>
dominicm08:11:25

@kenny I'm struggling a bit here.

lib/FB53F8539E7FCB8F093A56E138112056EC1DC809EBB020B59D8A36A5EBAC37E0-logback-classic-1.2.3.jar
lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar
Are in my jar too.
{:paths ["src"]
 :deps
 {org.clojure/clojure {:mvn/version "1.9.0"}

  ch.qos.logback/logback-classic {:mvn/version "1.2.3"}
  org.clojure/tools.logging {:mvn/version "0.4.1"}}
 :aliases
 {:pack
  {:extra-deps {pack/pack.alpha {:git/url    ""
                                 :sha        "d16bb29fa1581519c2659aed3c94e9a22a0329b8"
                                 :exclusions [org.slf4j/slf4j-nop]}}
   :main-opts  ["-m" "mach.pack.alpha.one-jar"
                "command-processor-standalone.jar"]}}}
Is my deps.edn. My foo/-main function looks like so:
(defn -main
  [& args]
  (log/info "Hello, world"))
and no error about logback when running it:
❯ java -jar command-processor-standalone.jar -m foo
08:04:58.010 [main] INFO foo - Hello, world

dominicm08:11:31

If I start a repl I can do

user=> (import 'ch.qos.logback.core.AppenderBase)
ch.qos.logback.core.AppenderBase
And all is fine.

dominicm08:11:28

@kenny if you run:

java -Done-jar.verbose=true -jar command-processor-standalone.jar -e "(import 'ch.qos.logback.core.AppenderBase)"
You will get a lot of output, but do you see:
JarClassLoader: findClass(ch.qos.logback.core.AppenderBase)
JarClassLoader: found ch.qos.logback.core.AppenderBase in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.AppenderBase)
JarClassLoader: findClass(ch.qos.logback.core.Appender)
JarClassLoader: found ch.qos.logback.core.Appender in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.Appender)
JarClassLoader: findClass(ch.qos.logback.core.spi.LifeCycle)
JarClassLoader: found ch.qos.logback.core.spi.LifeCycle in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.LifeCycle)
JarClassLoader: findClass(ch.qos.logback.core.spi.ContextAware)
JarClassLoader: found ch.qos.logback.core.spi.ContextAware in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.ContextAware)
JarClassLoader: findClass(ch.qos.logback.core.spi.FilterAttachable)
JarClassLoader: found ch.qos.logback.core.spi.FilterAttachable in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.FilterAttachable)
JarClassLoader: findClass(ch.qos.logback.core.spi.ContextAwareBase)
JarClassLoader: found ch.qos.logback.core.spi.ContextAwareBase in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.ContextAwareBase)
Or something similar?

dominicm08:11:35

It should be towards the end.

kenny16:11:40

@dominicm Yes. At the very end of the output, I get:

JarClassLoader: findClass(ch.qos.logback.core.AppenderBase)
JarClassLoader: found ch.qos.logback.core.AppenderBase in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.AppenderBase)
JarClassLoader: findClass(ch.qos.logback.core.Appender)
JarClassLoader: found ch.qos.logback.core.Appender in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.Appender)
JarClassLoader: findClass(ch.qos.logback.core.spi.LifeCycle)
JarClassLoader: found ch.qos.logback.core.spi.LifeCycle in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.LifeCycle)
JarClassLoader: findClass(ch.qos.logback.core.spi.ContextAware)
JarClassLoader: found ch.qos.logback.core.spi.ContextAware in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.ContextAware)
JarClassLoader: findClass(ch.qos.logback.core.spi.FilterAttachable)
JarClassLoader: found ch.qos.logback.core.spi.FilterAttachable in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.FilterAttachable)
JarClassLoader: findClass(ch.qos.logback.core.spi.ContextAwareBase)
JarClassLoader: found ch.qos.logback.core.spi.ContextAwareBase in codebase 'lib/5946D837FE6F960C02A53EDA7A6926ECC3C758BBDD69AA453EE429F858217F22-logback-core-1.2.3.jar'
JarClassLoader: defineClass(ch.qos.logback.core.spi.ContextAwareBase)
ch.qos.logback.core.AppenderBase

dominicm16:11:39

huh! Looks like AppenderBase is findable by clojure.main then!

dominicm16:11:11

I'm a bit stuck at this point. I think the next thing to start trying would be to figure out what function call(s) are triggering the error.