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.

Reply via email to