Quick note: You will need to update and compile util before you can update
and compile drjava.
I've just committed a somewhat radical change to DrJava's implementation
(which has no user-visible change, I hope). I've created a new framework
for invoking the interactions JVM that is simpler and does not use an RMI
registry. (This was causing us various problems and was just clunky. If
you're curious, the new system simply serializes the RMI stub to a file
and then lets the second JVM deserialize the file to establish the
connection.)
Anyway, this change involved my created a generic invoke-JVM package in
util (util.newjvm) and then porting DrJava to use this new framework.
(See util.newjvm's package docs for details.)
Anyhow, since this is a moderate architectural change, I would like to be
sure that it is happy on all platforms before we release anything based on
it. Could someone test it (by running the test cases and also by manually
ensuring the REPL works normally) on Windows and Mac and get back to me?
I've tried it on my home Linux machine and on Solaris with no problems.
I don't anticipate any problems but I'd rather find out from one of you
than from a user. :)
This change does not change the user-visible behavior at all, but it sets
the stage for a change to make DrJava actually close the interpreter JVM
before exiting. (Right now, it simply lets the interpreter kill itself
after the main DrJava process has been dead for a minute or so.)
I hope to implement this soon, possibly tomorrow.
-brian
PS: Good test suites rule. I had some initial problems with my adaptation
to the new framework, and these problems were caught by the existing
GlobalModelOtherTest case and it's tests relating to the REPL. If not for
the test cases, I would have had to do a lot more manual testing to check
the various behaviors, and even then I'd be less confident that I'd
covered it all. Test cases really do pay off a lot when you re-implement
existing functionality in a new way.
----------------------------------------------------------------
Brian Stoler home: (713) 520-9017 office: (713) 348-3720
Graduate student, Rice University Department of Computer Science
|