Re: [jdee-users] [jdee-devel] Call to Fork or simply for JDEE TODO items
Brought to you by:
paullandes
From: Grégoire N. <gre...@gm...> - 2013-05-06 19:36:21
|
Hi, I'm no elisp nor java expert but it seems to me the workflow you describe has already been implemented by Aemon Cannon with his https://github.com/aemoncannon/ensime . His emacs mode is specific to Scala, but to my understanding the protocol of communication between emacs and the jvm process isn't (based on slime, I think). Anyway, there maybe some ideas or even code to grasp out there...? On 6 May 2013 20:36, Paul Landes <la...@ma...> wrote: > Hi Shyamal, > > I don't think it would be that simple. We're not talking about the more > traditional process forked/IPC we're use to with M-x compile. It would > happen something like this: > > 1. Emacs starts a JVM process that runs Clojure or ABCL and takes requests > via a port (UNIX domain sockets or BSD sockets). > 2. Emacs connects to the JVM process using TCP and keeps the connection. > 3. User selects the pom.xml, which is like choosing the prj.el file. > 4. Emacs tells the JVM process which pom.xml. > 5. The JVM lisp language invokes a running maven (command line or > otherwise) instance the pom.xml and invokes functionality to get classpath, > dirs etc. > 6. Once all this handshaking and config is complete, the user invokes the > compilation and Emacs tells the JVM lisp to start compiling. > 7. The JVM lisp invokes the maven call to start compiling. > > There is a lot missing here of course. This is just the full compile use > case. There is another use case for fly compile to get real time errors, > symbol completion, javadoc etc. > > > On May 1, 2013, at 6:58 PM, Shyamal Prasad <sh...@me...> wrote: > > >>>>>> "Paul" == Paul Landes <la...@ma...> writes: > > > > Paul> My thinking is that maven will be a dependency. JDEE > > Paul> supporting ant, maven, javac compilations is one huge > > Paul> contributing reason for its bloat. > > > > You mean drop ant/javac support? That would be a no-no in my mind. I > > need all three :-) The ant support is, IMHO, fantastic. > > > > Maven actually "works" for me right now, though I have to set up my > > prj.el file manually. In my init.el I do > > > > (require 'jde) > > (require 'compile) > > (add-to-list 'compilation-error-regexp-alist 'maven) > > (add-to-list 'compilation-error-regexp-alist-alist > > '(maven "\\(^/.+?\\):\\[\\([0-9]+\\),\\([0-9]+\\)\\].*" > > 1 2 3)) > > > > since Maven, unlike ant, does not support an -emacs flag. Then in my > > prj.el file (at the same level as pom.xml) I add something like > > > > (setq compile-command > > "mvn -f ~/path/to/pom.xml compile assembly:single") > > > > and off I go with M-x compile. > > > > If JDEE would build my prj.el from pom.xml I would have everything I > > need (and there are *many* such .el files I've found around the > > interwebs, I beliee we just need to get a reliable version integrated). > > > > Cheers! > > Shyamal > > > > > ------------------------------------------------------------------------------ > > Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET > > Get 100% visibility into your production application - at no cost. > > Code-level diagnostics for performance bottlenecks with <2% overhead > > Download for free and get started troubleshooting in minutes. > > http://p.sf.net/sfu/appdyn_d2d_ap1 > > _______________________________________________ > > jdee-users mailing list > > jde...@li... > > https://lists.sourceforge.net/lists/listinfo/jdee-users > > > > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and > their applications. This 200-page book is written by three acclaimed > leaders in the field. The early access version is available now. > Download your free book today! http://p.sf.net/sfu/neotech_d2d_may > _______________________________________________ > jdee-devel mailing list > jde...@li... > https://lists.sourceforge.net/lists/listinfo/jdee-devel > -- Grégoire Neuville |