Thanks for investigating--any luck? On Friday, 10 March 2017 07:16:32 UTC-8, Mike Rodriguez wrote: > > I haven't been able to get to the bottom of this as of yet. Primarily the > problem is I need to investigate how `lein trampoline` works compared to > without it, from an implementation perspective. > > I'll note that `lein test` does do a :reload option to `require` when > running tests. Typically forced reloads of namespaces doesn't mix well > with AOT compilation, due to classloader issues like you are reporting here. > However, I'm still missing key parts to understanding this. I want to > look a bit closer at it, but just responding here in case these thoughts > are meaningful to anyone else that is looking at it. > > On Wednesday, March 8, 2017 at 12:07:31 AM UTC-5, Tianxiang Xiong wrote: >> >> I recently ran into an issue with AOT compilation that I'd like to >> understand better. A minimal working example (MWE) can be found here >> <https://github.com/xiongtx/lein-trampoline-aot>. >> >> Basically, using `:aot :all` in `project.clj` with `lein trampoline test` >> results in different classloaders for class `Foo`. >> >> Classloader for lein_trampoline_aot.core.Foo: >> #object[clojure.lang.DynamicClassLoader >> 0x4982cc36 clojure.lang.DynamicClassLoader@4982cc36] >> Classloader for (->Foo): #object[sun.misc.Launcher$AppClassLoader >> 0x55f96302 sun.misc.Launcher$AppClassLoader@55f96302] >> >> While the same classloaders are used with `lein test`: >> >> Class loader for lein_trampoline_aot.core.Foo: >> #object[sun.misc.Launcher$AppClassLoader >> 0x55f96302 sun.misc.Launcher$AppClassLoader@55f96302] >> Classloader for (->Foo): #object[sun.misc.Launcher$AppClassLoader >> 0x55f96302 sun.misc.Launcher$AppClassLoader@55f96302] >> >> When is one classloader used instead of another, and why do `lein >> trampoline test` and `lein test` behave differently with `:aot :all`? >> >
-- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.