We have actually installed DCEVM into Oracle jdk's 6 and 7 because those 
were what we are currently using. That all seems to work fine for us so far.

The approach I have taken with calling clojure from java is to create a 
couple of clojure records which implement java interfaces. In the java 
code, we use shims to require :reload the namespaces containing the impls 
and clj functions which return instances of these. After some code change, 
I am recreating the app object (similarly to how you would with stuart 
sierra's Component) and as part of that, each 'require' in the java is 
getting called once. This seems to work fine... but there may be better 
approaches.


On Thursday, August 14, 2014 3:59:41 AM UTC+1, Colin Fleming wrote:
>
> This looks really great. Due to limitations in Clojure's interop I'm 
> forced to use much more Java than I'd like in Cursive itself, I'll 
> definitely give this a go. The only problem for me might be running 
> IntelliJ under OpenJDK, I seem to recall that this didn't work well.
>
> How well does this work for redefining classes generated by protocols and 
> the like? Does this fix a lot of the problems with redefinition of them? I 
> can imagine it might be problematic because redefined protocol classes are 
> loaded with a different DynamicClassLoader (if I remember correctly), so 
> the new version will still be a different class instance even if the class 
> itself has been correctly updated.
>
>
> On 14 August 2014 03:47, henry w <[email protected] <javascript:>> wrote:
>
>>
>> My team inherited a large java code base which over time will be replaced 
>> in parts and maybe completely by clojure.
>>
>> One Clojure capability we wanted to get straight away was use of the 
>> REPL. but... Since regular oracle jvm classloading doesnt work like vars, 
>> you miss a lot of the benefits of repl-driven dev.
>>
>> Enter DCEVM <http://dcevm.github.io/>, a jvm mod that supports class 
>> redefinition. Using this with Cursive plugin, the Java is feeling a lot 
>> more dynamic and regular, (painfully slow) jvm restarts for devs are mostly 
>> a thing of the past.
>>
>> I understand JRockit and maybe other platforms also provide this 
>> functionality.
>>
>>
>>  -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to [email protected] 
>> <javascript:>
>> Note that posts from new members are moderated - please be patient with 
>> your first post.
>> To unsubscribe from this group, send email to
>> [email protected] <javascript:>
>> 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 [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to