When working in an actual development environment with other people, is Emacs still a valid IDE? I work with Eclipse with my co-workers, but I'm curious if there are any benefits whatsoever of using Emacs over Eclipse.
Emacs is a texteditor. Eclipse also got a texteditor, but lots of very useful stuff too, so Emacs looks like a subset of Eclipse to me. Some people are very productive programming only with texteditors, but i think there's absolutely no argument to not use an IDE like Eclipse.
The developers in our group use all manner of editors: emacs, vim, eclipse, netbeans, etc. I'm happy to have people use whichever tool makes them most personally productive. The tools that make collaboration within the group possible (source control, build scripts, project trackers) can be accessed easily by any of these editors. It makes no difference to me HOW the developers tie-in to the collaboration process so long as they DO.
EDIT: I was going to post links to articles on using emacs as a java IDE... there are a lot of very good tools. Here is one question from stackoverflow: http://stackoverflow.com/questions/41056/best-java-tools-for-emacs. But, honestly, type "emacs java ide" into google and you'll get lots of hits. YMMV, but people use emacs for java all the time.
For normal Java work Eclipse is much better, because it offers much better Java support.
Occasionally I switch to Emacs temporarily (Open With in Eclipse) when I have to do something repetitive with keyboard macros, or if I want to cut / paste rectangles.
I am using EMACS, and I tried eclipse before.
Current, I use emacs as a over-all solution, just like OS, I use emacs to view directory, open file, edit doc, but I'm not encourage you to use emacs in real production.
emacs is a tool for expert user who really know what they want and have the ability to do the hard configuration work.
eclipse is easier to use and understand, and have lots of plug-in, and easy to use for a team.
after all, I still suggest you to try emacs, think in the powerful way to work.
I switched from Emacs to Eclipse several years ago. It is a much better overall environment for doing Java development, especially if you are doing JEE. The plugins available (in my case WSAD and then RAD) certainly facilitated more efficient write, build, and test cycles with the built in test environment.
I still use Emacs, though not as much. If I just want to take a quick look at a file, that is not part of a project for instance, I can do this easily in emacs without any configuration concerns for projects and workspaces of Eclipse. Also, you can open and view just about anything, quickly. So it still has it's uses, but I just don't use it as part of my normal dev cycle.
I find some features of Eclipse indispensible. Being able to quickly bring up a list of available methods from an object is great. I must use this feature dozens of times daily. The 'Open Type' command is also very useful.
The only situation in which I would edit .java files with Emacs or Vim would be if I needed to make a (very) small change to a file on a remote server onto which I happen to be SSH'd.
If I had to pick one Java IDE, I'd pick Eclipse!
I use Emacs for some things, (g)Vim for others. I open Notepad++ once in a while, mostly because it's easier to read code there, and because it makes nicer hardcopy. I use JEdit when I'm writing XSLT, and recently I worked in an environment in which microEmacs was the best editor I could install.
When I'm writing Java, though, I use Eclipse or NetBeans. I don't have enough room in my head to retain all the state I would have to maintain to write Java with Emacs.
Emacs can have pretty good IDE-like features (e.g. CEDET + JDEE), but its main advantage is that you can edit text really, really efficiently. If you're proficient enough with emacs, you will be able to spew out text fast enough that lack of whatever IDE feature(s) becomes negligible.
I use emacs for all my coding, and I'm a full-time java programmer. I used to be an Eclipse guy, but I use it less and less. Nowadays it's mostly just for hairy refactorings or when I want to use the integrated debugger (which admittedly is quite nice).
And no, I don't miss Eclipse's code completion. I used to think that it'd be impossible to code java without it, but apparently I was wrong. :)
If you really feel you need an IDE, but still want to use emacs there's always JDEE, I guess. You get a class browser, command completion and some other nice things, but I've found I don't really need that. I've written a bunch of small elisp utilities for doing maven builds, running unit tests and so on, and that's all I really need.
So yes, emacs is useful for coding java. At least for me.
I do Programming full-time with PHP with a Couple of Hundreds of Files in every Project . With Eclipse I am able to browse through all the Files in Code Conveniently , See Methods of a Class in Outline Window[V.Imp thing I think] , Interface with SVN[with Subversive Plugin] , Work directly on a File through SSH or FTP[with RSE Plugin],Code Error Realtime Help and Auto-Completion and many more things I would probably go on like that . I use Eclipse PDT Galileo BTW .
I love Emacs and only use it for Small Smarty Based Projects .I even wrote a Tutorial about it on my Blog http://www.technyooz.com/ and I can do all those things in TRAMP mode [for SSH] and use DirEd for Code Browsing or maybe ECB , but its all Pain when doing it in Emacs. I would probably never get a Big Symfony or Zend Framework based Project Completed with Emacs , but with Eclipse I feel so Confident and can keep churning out Projects after Projects :)
I think Emacs may be good for Small Project , but for any thing Serious and Money I dont see a reason to use Eclipse [ PDT in my case]
That would depend on a lot of things. Firstly, do you work with people that use eclipse? I do, so eclipse is very useful for me. Eclipse is our "official" editor. On the other hand, I personally do not edit much code that anyone else than I edit. Therefore I could use Emacs if I wanted to.
Other than work-place standards, use whatever you are most comfortable with. I find them both great at what they do, and with customization and accustomization they can both be great at java.
I have to say though, eclipse is probably easier to get started with.
I think that in general it's healthy for a project to have people using a diversity of tools for many reasons, not least of which because it allows each developer to work in an environment which they're most productive in instead of having to adapt themselves to some arbitrary tool.
Also, it gives important perspective. In some shops it's easy to get into a mentality that "Programming is Eclipse" in the same way non-computer savvy people think "Internet Explorer is the internet". You don't want inbuilt assumptions that make it more difficult to be flexible in the future. You want people to think "what's the best way to solve this problem" and not "what specific icon do I click on in Eclipse?"