experiments/JavaCompiler.st
branchdevelopment
changeset 2643 dc73ff5b258a
parent 2588 58b1e0fd20e7
child 2645 b7a540a27521
--- a/experiments/JavaCompiler.st	Mon Aug 05 10:45:36 2013 +0100
+++ b/experiments/JavaCompiler.st	Mon Aug 05 10:49:25 2013 +0100
@@ -192,11 +192,16 @@
                 requestor: requestor;
                 compile: source.
     register ifTrue:[
-        JavaVM registry registerClasses: classes.
+        JavaVM registry registerClasses: classes andWait: true.
+        "/ Register class may eventually reload a class. When only methods are changed,
+        "/ reloader only updates method dictionary and constant pools and the new class
+        "/ is immediately thrown away. Thus, refetch classes...
+        classes := classes collect:[:cls|JavaVM registry classNamed: cls name loader: cls classLoader].
     ].
     ^classes first.
 
     "Created: / 03-04-2013 / 00:10:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 04-08-2013 / 14:10:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 evaluate: source notifying: requestor compile: doCompile