Re: flymake integration for the eclipse java compiler

"Suraj Acharya" <[email protected]> Mon, 23 Apr 2007 12:53:22 -0700
Newsgroups gmane.emacs.jdee
Message-ID <[email protected]>
Hi James,

I've emailed Pavel  Kobyakov, the author of flymake to find out if
there's any Emacs 21 backport available.

Suraj

On 4/23/07, James Ahlborn <[email protected]> wrote:
>
>  hey,
>  i gave this a fling on emacs 21.3 with the initial 0.3 version of flymake
> (the first version checked into the emacs CVS tree), and i didn't get very
> far at all.  i patched and patched for an hour or so and finally gave up as
> it seems the initial 0.3 version of flymake is very different from what
> jde-eclipse-compiler-server was written against.  i eventually got the
> compilation to run, but the error buffer parsing was a mess.  any chance the
> jde stuff could be backported for us emacs 21 users?  or, is there a more
> recent version of flymake out there that is still 21.3 compatible?
>  thanks,
>  -james
>
>
>  On Wed, 2007-04-18 at 20:43 -0700, Suraj Acharya wrote:
>  Hello,
>
> I've updated the eclipse java compiler with JDE integration package at
> http://www.emacswiki.org/cgi-bin/wiki/jde-eclipse-compiler-server.el
> to take advantage of the -Xemacs flag in the 3.2 and newer versions of
> the compiler.
>
> The docs to reflect the fact that the compiler is also available as a
> small (1 MB) download completely independent from eclipse. The "JDT
> Core Batch Compiler" at
> http://download.eclipse.org/eclipse/downloads/drops/R-3.2.2-200702121330/index.php
> has the latest (3.2.2) version.
>
> And I've also added flymake integration. From the usage notes:
> ; * Flymake
> ;;
> ;; You have two options to hook the eclipse java compiler into flymake
> ;; to get automatic error/warning information in your source buffers:
> ;; (To use flymake with ecj you first have to select "eclipse java
> ;; compiler server" as your jdee compiler.)
> ;;
> ;; 1) jde-ecj-flymake-init : This is the simple, robust and painfully slow
> ;; method, in which flymake forks a new jvm process each time it
> ;; decides to error check the buffer.
> ;;
> ;; To use this funtion set the java line in
> ;; `flymake-allowed-file-name-masks' to
> ;; (\"\\.java\\'\" jde-ecj-flymake-init jde-ecj-flymake-cleanup)"
>
> ;; 2) jde-ecj-server-flymake-init: This method involves flymake sending a
> ;; compile command to the eclipse java compiler server in the JDEE
> ;; bsh process, detecting when the compiler is done printing errors
> ;; and warnings and then handing control of the bsh process back to
> ;; JDEE. While it is much faster and compares well to the jikes
> ;; flymake integration
> ;; (http://www.emacswiki.org/cgi-bin/wiki/jde-flymake.el),
> it
> ;; requires some significant changes to `flymake-process-filter'
> ;; and `flymake-start-syntax-check-process' and so is more
> likely
> ;; to be flaky, and cause problems if you use flymake with
> ;; non-java buffers.
> ;;
> ;; To use this funtion set the java line in
> ;; `flymake-allowed-file-name-masks' to
> ;; (\"\\.java\\'\" jde-ecj-server-flymake-init jde-ecj-flymake-cleanup)"
>
> I've only tested this with CVS emacs and the included flymake (version
> 0.3). Any volunteer beta-testers for other platforms.
>
> Suraj
>
>