This might be a job for jde-jeval-async, which asks the beanshell to evaluate something and returns right away, unlike jde-jeval and friends it doesn't wait for a response from bsh.
(defun jde-jeval-async (java-statement &optional eval-return) "Uses the JDEE's instance of the BeanShell Java interpreter to evaluate the Java expression EXPR. It returns right away and doesn't wait for a response from the BeanShell. If the BeanShell is not running, the JDEE starts an instance. " (let ((the-bsh (oref 'jde-bsh the-bsh))) (when (not (bsh-running-p the-bsh)) (bsh-launch the-bsh) (bsh-async-eval the-bsh (jde-create-prj-values-str))) (bsh-async-eval the-bsh java-statement eval-return))) I had to modify bsh-async-eval slightly to add the option on not evaluating the return value. (defmethod bsh-async-eval ((this bsh) expr &optional eval-return) "Send the Java statement EXPR to the BeanShell for evaluation. Do not wait for a response." (unless (bsh-running-p this) (bsh-launch this)) (oset this lisp-output "") (oset this java-expr expr) + (if eval-return + (set-process-filter (oref (oref this buffer) process) (oref this async-filter)) + (set-process-filter (oref (oref this buffer) process) (oref this eval-filter)) + ) - (set-process-filter (oref (oref this buffer) process) (oref this async-filter)) (when (bsh-running-p this) (process-send-string (oref (oref this buffer) process) (concat expr "\n")))) I don't know much about process filters but this seems to work as expected even if more than one command has been submitted to the beanshell. For example: (progn (jde-jeval-async "Thread.sleep (10000);System.out.println (\"'a\");") (jde-jeval-r "System.out.println (\"'b\");")) returns 'b after 10 seconds as expected. On Thu, 14 Oct 2004 22:38:39 -0400, Paul Kinnucan <[EMAIL PROTECTED]> wrote: > Raul Acevedo writes: > > On Wed, 2004-10-13 at 01:14 -0400, Paul Kinnucan wrote: > > > > > * Update the class list used by completion and by code generation > > > wizards after compiling a class or building a project. This > > > should ensure that completion and the wizards work for new > > > classes and changes to existing classes after compiling > > > new or changed classes. > > > > This is extremely slow on large projects, even if I'm just compiling a > > single class. I'm assuming that's because it's updating everything in > > the class path. If so, can it be changed to only update the class that > > was just compiled? And until that happens, how can I disable it and run > > it manually when necessary? It takes about 30 seconds right now. > > > > Hi Raul, > > I'll see if I can get the first approach to work. Meanwhile, you can > easily disable this feature by removing je-compile-finish-update-class-info > from jde-compile-finish-hook. > > Paul > >