From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Francesco Mazzoli Newsgroups: gmane.emacs.help,gmane.emacs.jdee.user Subject: Re: JDEE help (was: Emacs and Java) Date: Sat, 15 Sep 2012 08:22:24 +0100 Message-ID: <87a9wrpx73.wl%f@mazzo.li> References: <87har0onhj.wl%f@mazzo.li> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Trace: ger.gmane.org 1347693764 30709 80.91.229.3 (15 Sep 2012 07:22:44 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 15 Sep 2012 07:22:44 +0000 (UTC) Cc: jdee-users@lists.sourceforge.net To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sat Sep 15 09:22:48 2012 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TCmiC-0001Yf-Nt for geh-help-gnu-emacs@m.gmane.org; Sat, 15 Sep 2012 09:22:44 +0200 Original-Received: from localhost ([::1]:34456 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TCmi8-0007pd-2B for geh-help-gnu-emacs@m.gmane.org; Sat, 15 Sep 2012 03:22:40 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:34506) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TCmi0-0007pT-OB for help-gnu-emacs@gnu.org; Sat, 15 Sep 2012 03:22:34 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TCmhz-0003yW-9s for help-gnu-emacs@gnu.org; Sat, 15 Sep 2012 03:22:32 -0400 Original-Received: from mail-wi0-f177.google.com ([209.85.212.177]:37949) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TCmhz-0003yM-3r for help-gnu-emacs@gnu.org; Sat, 15 Sep 2012 03:22:31 -0400 Original-Received: by wibhn17 with SMTP id hn17so527233wib.12 for ; Sat, 15 Sep 2012 00:22:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=date:message-id:from:to:cc:subject:in-reply-to:references :user-agent:mime-version:content-type:x-gm-message-state; bh=4857UgN6chphpZxUU2ZXF6NZ68T0tlSfYGht2uW4GZE=; b=cG+rP4ncfVFed3qitWLPW5qEO3mbWM4OkdwITusv9fd9LsrycDSJO/mox0NdxgLGLa bLG8e8+/ueL8L8iud2aYN0dk6HBRqp4gCkxpr78t+Bq4U73HUSDeYFp9DkoiYTUr4OZL edRXzos/lPP8YZRKSTD4fBwVarMc5Yz3OiauabGdK17dm2wcvkfpEbi9kk9+Bs1HP/jV pW3BrCzTDeohvl3X7b8gB4HhqcIT5I9Gi6xI7WwALsCtMBOgi3+U57LMZVjat2HjdyiT U3NOE5ObderEBVvNAASboAIVmzvhip330CObHoJUNgEHkM8cdiSbeV5ko+JM1uE4dhlb SntQ== Original-Received: by 10.180.109.129 with SMTP id hs1mr3301259wib.0.1347693747219; Sat, 15 Sep 2012 00:22:27 -0700 (PDT) Original-Received: from stringer.mazzo.li (host86-133-198-78.range86-133.btcentralplus.com. [86.133.198.78]) by mx.google.com with ESMTPS id ct3sm3195844wib.5.2012.09.15.00.22.25 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 15 Sep 2012 00:22:26 -0700 (PDT) In-Reply-To: <87har0onhj.wl%f@mazzo.li> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/23.3 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) X-Gm-Message-State: ALoCoQmMERWzE+eu6gJ4c2es40DEjJ+yL8hcY7VxR6D60XCzywYTWDT8ljpUtHOpnxfMVGm18IQg X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.212.177 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:86785 gmane.emacs.jdee.user:635 Archived-At: In the end I've bitten the bullet, pulled a fresh svn copy of JDEE, built it and somehow managed to get it working. This is my config, mostly taken from the emacswiki article : ---------------8<--------------- (add-to-list 'load-path (expand-file-name "~/.emacs.d/site-lisp/jdee/lisp")) (setq semantic-default-submodes '(global-semantic-idle-scheduler-mode global-semanticdb-minor-mode global-semantic-idle-summary-mode global-semantic-stickyfunc-mode global-semantic-mru-bookmark-mode)) (setq semantic-load-turn-everything-on t) (semantic-mode 1) (require 'semantic) (require 'semantic/senator) (require 'semantic/ia) (require 'semantic/wisent) (require 'semantic/wisent/java-tags) (setq jde-auto-parse-enable nil) (setq jde-enable-senator nil) (load "jde-autoload") (require 'jde) (setq jde-ant-enable-find t jde-build-function 'jde-ant-build jde-ant-args "compile") (add-to-list 'auto-mode-alist '("\\.java\\'" . jde-mode)) (push 'jde-mode ac-modes) (setq jde-jdk '("1.7") jde-jdk-registry '(("1.6" . "/usr/lib/jvm/java-1.6.0-openjdk-amd64") ("1.7" . "/usr/lib/jvm/java-1.6.0-openjdk-amd64"))) (define-key jde-mode-map (kbd "") 'jde-build) (define-key jde-mode-map (kbd "") 'jde-run) (defun java-hooks () (menu-bar-mode 1) (wisent-java-default-setup) (setq c-basic-offset 4) (setq fill-column 90) (setq whitespace-line-column 90) (jde-abbrev-mode)) (add-hook 'jde-mode-hook 'java-hooks) (add-hook 'java-mode-hook 'java-hooks) --------------->8--------------- Then for each project I have I create a `prj.el' file something like (jde-project-file-version "1.0") (jde-set-variables) (setq jde-global-classpath '("/path/where/project/classes/are")) (setq bsh-classpath '("/path/where/project/classes/are")) This is already a huge improvement, the semantic mode works, and I can compile and run java classes easily. However, I still need some help to make some feature work: * proper completion: right now, if I press `C-c C-v .' the completion works, but only for classes outside my project. I'm afraid that jde is not picking up the project classpath for some reason, or something else is going wrong. Is there a way to force a reload of the classes? * completion with auto-complete: is it possible to bind in some way the jdee completions with auto-complete? I could define the ac sources manually but maybe there is something already... * beanshell: similar to the problem above, beanshell works (miracle!) but my project classpath is not included. As you can see I set `bsh-classpath' but it does not seem to have an effect. * syntax highlighting: while semantic seems to parse java correctly (I think that `wisent-java-default-setup' should provide an improved parser), generics & co. are still not highlighted. Is there a way to make that work? * tags and semantics: this is more of a semantics question, but I'd like to jump to semantics tags when I press `M-.' instead of having to type the horrible `C-c , J' and then specify the name manually. * flymake: this is not essential, but is it possible to tie the jde compilation (`jde-build') to flymake? When I'm done with this I'll write a wiki page documenting the steps to take, I think that with enough configuration JDEE could be the solution. Thanks, Francesco.