From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Steve Revilak Newsgroups: gmane.emacs.help Subject: Re: Java programming and emacs Date: Wed, 6 Jan 2010 21:59:39 -0500 Message-ID: <20100107025939.GQ387@srevilak.net> References: <20100107010315.A4F2A10AFB0@mxperim6.sea5.speakeasy.net> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="U2mKMzaWgYxzMy3/" X-Trace: ger.gmane.org 1262833230 30648 80.91.229.12 (7 Jan 2010 03:00:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 7 Jan 2010 03:00:30 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Jan 07 04:00:23 2010 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1NSibk-0003JC-Q3 for geh-help-gnu-emacs@m.gmane.org; Thu, 07 Jan 2010 04:00:21 +0100 Original-Received: from localhost ([127.0.0.1]:53678 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NSibk-0007kC-TU for geh-help-gnu-emacs@m.gmane.org; Wed, 06 Jan 2010 22:00:20 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NSibH-0007if-V0 for help-gnu-emacs@gnu.org; Wed, 06 Jan 2010 21:59:51 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NSibC-0007fE-CF for help-gnu-emacs@gnu.org; Wed, 06 Jan 2010 21:59:50 -0500 Original-Received: from [199.232.76.173] (port=39812 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NSibC-0007f3-55 for help-gnu-emacs@gnu.org; Wed, 06 Jan 2010 21:59:46 -0500 Original-Received: from mail1.sea5.speakeasy.net ([69.17.117.3]:51267) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NSibB-00089k-IR for help-gnu-emacs@gnu.org; Wed, 06 Jan 2010 21:59:45 -0500 Original-Received: (qmail 12641 invoked from network); 7 Jan 2010 02:59:41 -0000 Original-Received: from pool-71-184-159-146.bstnma.fios.verizon.net (HELO srevilak.net) (srevilak@[71.184.159.146]) (envelope-sender ) by mail1.sea5.speakeasy.net (qmail-ldap-1.03) with AES256-SHA encrypted SMTP for ; 7 Jan 2010 02:59:41 -0000 Content-Disposition: inline In-Reply-To: <201001062217.o06MHAr6015177@fed.local> User-Agent: Mutt/1.5.19 (2009-01-05) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:71101 Archived-At: --U2mKMzaWgYxzMy3/ Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline Content-Transfer-Encoding: quoted-printable >From: Xavier Maillard >I have started for a few weeks now coding for the Android >platform. That's pretty new to me and thus I am not really >informed of what I can use in Emacs to be more productive. > >I am looking for a good setup that could integrate java >programming, checkstyle plugin support and SVN (code I am working >on is hosted on code.google.com). I do a fair amount of java programming with emacs, so I can share a few things that have been helpful for me. - If you're using ant to build your java code (setq compile-command "ant -find build.xml ")=20 is helpful - If you're using ant, set the environment variable "ANT_ARGS=3D-emacs". This causes ant to emit output in a format that compliation mode can understand - If checkstyle has an ant task, then you can probably just run checkstyle with ant (i.e., put a checkstyle target in your build.xml). - For code navigation, gnu global works pretty well with java. Global seems to understand java's language structure a little better than etags does. http://www.gnu.org/software/global/ Global comes with a lisp library for emacs integration. I use it like this: (if (file-exists-p "~/.elisp/gtags.el") (progn (autoload 'gtags-mode "gtags" "" t) (setq java-mode-hook '(lambda () (gtags-mode 1))) ) ) Among other things, gtags-mode rebinds M-. to gtags-find-tags. Working in gtags-mode is similar to using regular TAGS tables. CEDET also looks promising, but I haven't had time to experiment with it. - vc should work fine with SVN. At least that's been my experience. Steve --U2mKMzaWgYxzMy3/ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.11 (Darwin) iEYEARECAAYFAktFThsACgkQX7YJI4BuyDRuMQCg8UPeJ8LAZmEvevB1pmx00+je tXgAoOb6uOMiqAOlJ1q7zE9IRxKvZAHZ =z1fA -----END PGP SIGNATURE----- --U2mKMzaWgYxzMy3/--