share
Stack OverflowWhat is the best *free* IDE for Java programming?
[+35] [28] Click Upvote
[2009-01-03 11:17:18]
[ java eclipse netbeans ]
[ http://stackoverflow.com/questions/408929/what-is-the-best-free-ide-for-java-programming ] [DELETED]

There are two free IDEs for Java: Netbeans and Eclipse.

Netbeans seems to have better auto-complete support and compile/debugging support. However, it lacks support for auto-completing variable/method names, as well as word-wrap support.

What are the Pros & Cons of Netbeans over Eclipse, and vice versa?

(1) There is a third one, and to me it is by far the best: IntelliJ IDEA. Pros: simpler, more intuitive UI; more advanced and refined refactorings; many more static code analysis warnings; plugins are easier to find and install. Cons: support for certain technologies is not available in the free Community Edition. - Rogério
[+77] [2009-01-03 11:21:28] Yuval Adam

Eclipse [1] - first and foremost, because it has amazing versatility as a platform. If you are into it, it can be your only IDE you will use for any type of development: Java by default, C++ via CDT [2], Java EE extensions [3], Python via PyDev [4] - just to name a few.

Needless to say, Eclipse has full and complete support for java development: code completion, syntax highlighting, code refactoring, etc. I rarely find myself needing external tools for these types of jobs.

[1] http://www.eclipse.org/
[2] http://www.eclipse.org/cdt/
[3] http://www.eclipse.org/downloads/moreinfo/jee.php
[4] http://pydev.sourceforge.net/

I like a lot eclipse but for GUI sucks (Visual Editor is dead) - FerranB
(7) sadly, eclipse doesn't do .net; +1 anyways. - David Schmitt
(1) @David, NetBeans doesn't either ;) - Yuval Adam
(15) It doesn't make you coffee either, despite it's name. - PEZ
(7) I wouldn't say that Eclipse's best thing is that it can be used for everything. I actually dislike that, quality of different plugins/extensions vary wildly and who said I want to use the same IDE for everything? (Unless it did an outstanding job at everything, which it doesn't) - Vinko Vrsalovic
@David: there is Silverlight support though: eclipse4sl.org :-) (funded by Microsoft) - Peter Štibraný
I'm a big Eclipse fan, but managing the plugin dependencies drives me crazy. I use MyEclipse. At $60/year, it's a really nice 'distro' that saves me a lot of headaches. - Mike Sickler
(4) Eclipse is the best open source program I've used and I still hate it at times. Call me ungrateful but I'd really could do with just Project Explorer, autocomplete/syntax coloring, refactorings and one-button compiling/running of the class/project. - Esko
(10) I used to love Eclipse until it became bloated and slowww - Joe Philllips
(2) Everything that Yuval says about Eclipse is also true of NetBeans, which supports C++, Java EE, Python, Ruby+Rails, JavaScript, CSS, etc. etc. - Jose M Vidal
1
[+51] [2009-01-03 15:07:29] Fernando Miguélez

This is one of the most recurrent questions in Stackoverflow. The battle between Netbeans vs Eclipse is becoming such an epic one similar to the Vi vs Emacs.

The users of stackoverflow have discussed many [1], many [2] times only for barely comparing them programming Java or using them for something more specific such as RCP [3] or GUI [4] programming.

According to the responses some conclusions can be drawn:

  • Both IDEs have equivalent features at least concerning Java programming. The election is mainly a matter of personal preferences.
  • Most Java programmers (at least at Stackoverflow) tend to prefer Eclipse over Netbeans.
  • According to extensibility or number of features Eclipse wins over Netbeans.
  • The only field where Netbeans is superior to Eclise is GUI Java programming (thanks to superior Matisse Netbeans plugin).
[1] http://stackoverflow.com/questions/152691/is-eclipse-the-best-ide-for-java
[2] http://stackoverflow.com/questions/330027/what-is-the-difference-between-eclipse-and-netbeans-if-i-want-to-use-only-the-jav
[3] http://stackoverflow.com/questions/177475/which-is-the-best-rcp-platform
[4] http://stackoverflow.com/questions/112854/what-does-either-java-gui-editor-offer-for-rapid-development-and-maintainability

(1) And another is JavaScript editing. Eclipse sucks there. - Adeel Ansari
(3) Eclipse with Aptana plugin is a great JavaScript editor. - Ruggs
2
[+41] [2009-01-04 14:40:33] willcodejavaforfood

I would recommend trying both to see what works best for you.


(10) Kind of goes without saying, don't you think? - Yuval Adam
It is very subjective so just because I am really impressed with an IDE for whatever particular reason doesnt mean that you would be. I really would not choose IDE without trying them for myself, especially since so many are free. - willcodejavaforfood
Yea, that was about the approach I decided to go with :) - Click Upvote
Click Upvote - So what is your IDE of choice then? :) - willcodejavaforfood
(3) Many of the people here use both. I use Netbeans right now and have used Eclipse in the past. My choice is almost always dependent on the work that I'm doing that minute. - Bob Cross
@Willcodejava, Netbeans, but for google web toolkit I'm forced to use Eclipse. For everything else including PHP, I now use Netbeans:) - Click Upvote
@Willcodejava, What about you? - Click Upvote
@Clicl Upvote - At work I have to use Eclipse but at home I mostly use NetBeans. - willcodejavaforfood
@Bob Totally agree with you. For example, the JAX-WS support in NetBeans is much better. Grails support was also much better (things might change with SpringSource Tool Suite though). So, indeed, just use the right tool for the right job. - Pascal Thivent
I have actually switched from Eclipse to IntelliJ now :) - willcodejavaforfood
3
[+30] [2009-01-03 12:50:32] duffymo

I think NetBeans has come a long way and deserves at least equal billing with Eclipse now. Eclipse had a good head start, because NetBeans stumbled out of the blocks, but I think it's drawn even. The Eclipse plug-in architecture seems a bit bloated to me now.

UPDATE:

Since IntelliJ community edition [1] was announced, we have a hands-down winner for best free Java IDE. It's not even close.

[1] http://www.jetbrains.org

(4) +1 for bloated. I still prefer it to NetBeaners - Joe Philllips
(3) +1 for IntelliJ IDEA - Nader Shirazie
+1 for offering an alternative. - Tony
Why IntelliJ? Can you give a list of features or something that other IDE's can't do? - User1
No, I won't give a list. I'm basing it on my personal experience with Eclipse and IntelliJ. I think the JetBrains folks do it better. The IDE reads my mind and doesn't get in the way. No list. - duffymo
4
[+20] [2009-01-04 14:49:40] frankodwyer [ACCEPTED]

I'm happy with Netbeans, some pluses for me are:

  • GUI designer support
  • Groovy support (plays nicely with Java)
  • ruby & RoR support (because I don't just program in Java)
  • svn support

With the exception of the GUI designer, I don't think any of this is unique to Netbeans - it just works well enough for me and is mostly straightforward to use. I found eclipse a bit difficult to approach.

I don't ask much from an IDE though - I'm also happy to use Textmate on the mac.


(2) You don't only program Java? But... I thought it was portable? - Joe Philllips
5
[+18] [2009-01-03 11:37:23] Vinko Vrsalovic

The GUI builder from NetBeans is a huge plus for it against Eclipse. If you don't do GUI development, then they are relatively equivalent.


No. Have you tried JavaScript editing is Eclipse, it sucks. At least few months ago. - Adeel Ansari
(7) Why are you making the same javascript comment repeatedly? - Simucal
That is probably the biggest difference nowadays. Especially since NetBeans now has the call hierarchy function as well :) - willcodejavaforfood
6
[+11] [2009-01-03 12:00:21] John Nolan

As a very occasional Java developer, I have found that NetBeans was less complicated than Eclipse and therefore more accessible and easy to use.

Eclipse though is far more extendable. I've found it no problem to jump between the two perhaps you should do the same?


7
[+7] [2009-01-03 11:28:47] jeffl8n

I use Eclipse for my Java development, but that's the IDE I used when I first started programming Java. I've checked out both Eclipse and Netbeans and I think overall it just comes down to personal preference or what you're used to using. Both IDEs have good support of Java and several plug-ins to integrate other tools with your development.


8
[+7] [2009-01-03 13:10:10] systemsfault

If you plan to use your ide for academic or open source projects, i recommend idea intellij.

Otherwise just try Netbeans and Eclipse, then decide on one of them. I have used both of them. But nowadays I prefer Netbeans because I think that it is more user-friendly and easy to use.

By the way both of the IDE's won't have many differences in comparasion charts but the implementation of the features differs for instance svn, ruby, jsf vice versa.


-1 This is the second post on this thread that says "use intellij" without any rationale or supporting statements. - User1
OK, that's interesting after 4 years later. I'm no more programming in java and intellij :D. Anyways I agree with the arguments provided by @Peter Lawley. - systemsfault
9
[+5] [2009-01-03 13:01:45] Mark Davidson

I would really recommend Netbeans over eclipse there is some really good stuff in it and it's also very easy to use.

The auto complete is extremely good such as in the way when your auto completing parameters for a method it wills suggest ones of an appropriate type etc.

It does however not have word wrap (however it is on the cards for 7.0) but when writing Java code you really should not need it as most Java code conversions stick to the 80 character long line limit.

If you have a look at http://wiki.netbeans.org/NewAndNoteWorthyNB65#section-NewAndNoteWorthyNB65-Java that shows some of the great new features for Java in Netbeans.


Eclipse can also auto-complete parameters. I would argue its auto-complete is better. - Craig P. Motlin
I would be interested to know could you please explain why its autocompletion is better. - Mark Davidson
I have not use NB for year. But what I read from recent new feature of the editor in NB are already exists in Eclipse many years ago. - Dennis Cheung
10
[+5] [2009-01-03 15:04:14] pansapien

I used Eclipse for years and have just recently switched to NetBeans 6.5. Eclipse needs such a hodge podge of plugins to get it to up to snuff where as with NetBeans I only use a few, nice to have plugins.

NetBeans also has much better Maven integration. I've tried the various plugins for integrating Maven into Eclipse, and they're abysmal.


11
[+5] [2010-02-04 22:29:06] Peter Lawrey

InteliiJ Community Edition is also free and my preferred choice.

IMHO Intellij pluses are;

  • Commercial grade IDE.
  • Refactoring while you type. It has a more refactoring options and you can use these more freely to help you write the code. Refactoring works across modules reliably.
  • Code analysis with more quick fixes. Code analysis is fine, but unless it is easy to fix, most of the small stuff with just be left. I had a project with 2000 redundant ; but it wasn't worth fixing, until I use IntelliJ and fixed them all with two clicks.
  • You can use code as soon as you write it. With Netbeans you have to build each module before that code is usable in another module.

I don't use all IntelliJ's features. For more features where IntelliJ is better http://www.jetbrains.com/idea/features/


There is also JCreator, DrJava, BlueJ, Gel, JIPE, SyncJEdit and some claim emacs. ;)


-1 The third intellij post on this thread without any supporting arguments why it is a superior option. - User1
@User1 Thank you for the update, two years after the original answer. ;) - Peter Lawrey
Thanks for updating your post. Even though you wrote it two years ago, I read it today. I withdrew my downvote. - User1
@User1 Always happy to get constructive criticism. Thank you. - Peter Lawrey
12
[+4] [2009-01-03 14:18:21] Aaron Digulla

I can't recommend any of these. Actually, I can't recommend any IDE for you. Despite believing that every person is different, the same people insist that there is a "best" which is best for everyone.

This just doesn't work. If you want your question answered, get all three, install them and use them for a day. Each IDE has a different philosophy, a different mind set and will fit different people. In my team, two people use IntelliJ IDEA and I'm using Eclipse. I've tried IDEA and frankly, it sucks for me. I would never use it for any kind of work and if pressed to list all the things that I don't like, I wouldn't know where to start. Eclipse just fits my mind set and IDEA doesn't.

For the other people in my team, Eclipse would be about as wrong as IDEA is for me. Plus, all IDEs store their project files in a different place, so there is nothing stopping us from using what is best for each one of us.


13
[+3] [2009-01-03 15:39:02] WayneM

Eclipse if you want more functionality and customization, Netbeans if you like having one "super IDE" that gives you everything out of the box like MS Visual Studio. I've used them both (just in passing since Java is not my specialty) and liked Eclipse because of the plethora of plugins available, but Netbeans was very nice coming from an MS background. Netbeans has come a long way as well and is now pretty much equal to Eclipse in terms of functionality.

If you haven't already, download them both and play around and figure out which one works best for you. If you're doing GUI development, though, then Netbeans wins hands down because of their "Matisse" GUI builder; it's the single best GUI builder I've ever seen.


14
[+3] [2009-04-05 08:31:03] Masi

I am surprised that nobody has not yet mentioned the distributions of Easy Eclipse

EasyEclipse packages together Eclipse, the open-source software development platform, and selected open source plugins.

You can find the distros here [1].

I personally use the Expert and GUI distros.

I find it useful not to have all plugins in one Eclipse.

[1] http://www.easyeclipse.org/site/distributions/index.html

thanks a lot, this was really helpful. I've been struggling with finding a web development dist. for eclipse for a long time - Click Upvote
15
[+2] [2009-01-03 11:22:49] PEZ

I haven't used NetBbeans in years. But I'm sure both Eclipse and Netbeans support the Java programmer really well. I use Eclipse daily and I must say that it kicks ass. It has a huge support from the open source community.


16
[+2] [2009-01-03 12:40:36] Mongoose

I've used both Eclipse and NetBeans , but not for any huge projects. Eclipse doesn't have a built-in GUI designer, so you have to do it either by hand or with a plug-in. Also, Eclipse makes a ton of temporary files in strangely named directories for some reason, and that always bugged me (a minor thing I guess).

NetBeans was perfect for what I was doing, it has a top-notch GUI designer, and a cleaner interface. I also liked how easy refactoring was, but I think it's probably just as easy in Eclipse.

In the end, I'd recommend NetBeans unless there's some awesome plug-in for Eclipse that will help you.


17
[+2] [2009-01-03 14:12:50] Dinesh

I have not used Netbeans.But I used intellij IDEA.It works very very slow compare to Eclipse.For java programming my choice is always eclipse .


18
[+2] [2009-04-06 19:06:03] euphoria83

Eclipse is great.

Features:

  1. Autocomplete
  2. Links multiple projects together beautifully so as to allow work on large projects with multiple packages.
  3. Integration with version control.
  4. Fast
  5. Provides all the facilities of the command line
  6. Very stable
  7. Auto-update

You just described NetBeans (except for "Fast", which neither of them are in my experience). I'm not quite sure what you mean by #5, though. - Michael Myers
Netbeans has a great UI but eclipse supports GWT :( - Click Upvote
@Click Upvote: gwt4nb.dev.java.net looks promising. But I don't want to hijack this answer to discuss it. If GWT is what you want, could you add it to the question? - Michael Myers
I mean you can basically put all ur command line arguments and instructions to the VM in the project properties in the same way u would write them on the command line. For me, it keeps a sense of unity, inlike other IDEs which have separate fields or checkboxes for various properties like heap size. - euphoria83
@euphoria83: Oh, ok. NetBeans does the same thing. - Michael Myers
19
[+2] [2010-02-04 20:34:16] Szyzygy

I never was a huge fan of IDEs until I discovered NetBeans. Now I'm a total convert. It's simple to use, unfussy and intuitive. Conversely, having been obliged to use Eclipse on a number of projects I have worked on, I can only say that the opposite applies.


20
[+1] [2010-09-22 08:21:56] Marco

In my opinion is NetBeans the Best Free IDE, because it is very neat, has a good speed and i think the integrated GUI - Builder is the best i have ever seen for free!!!!

The one Thing i feel to need is an Repository Explorer like it works in Eclipse.


21
[+1] [2010-12-02 06:07:06] Эџad Дьdulяңмaи

One word .. NetBeans


22
[+1] [2011-04-13 23:41:18] JavaAndCSharp

I have made several (mostly) successful programs with NetBeans. The one time I tried Eclipse was when a friend forced me to try it-I'm still suffering from the side effects. :)

I would definitely go with NetBeans.


23
[+1] [2011-04-24 07:09:15] irreputable

Real men use IntelliJ.

People who were old enough to be a java developer when IntelliJ first came out, and didn't become a user of it, have some explanations to do in my book. If it was because it costed a day of your salary, I just cannot take you seriously.


24
[0] [2009-01-03 15:13:07] kal

I would second eclipse recommendation as pointed by previous posts. It has good set of features and adding new plugins like finbugs for your java projects is pretty simple.


25
[0] [2009-01-03 15:57:49] Andrej

Oracle's JDeveloper is also free (as in beer), and feature wise on par with eclipse and netbeans. It's probably more complete than eclipse, as you don't have to install a lot of not so well integrated plugins. Includes visual support for jsp/jsf/swing, ejb support etc. It lacks good maven support though and it's drag and drop support through adf bindings is sort of propriatary, as only oracle supports it.


26
[0] [2009-02-03 11:15:01] mparaz

I would like to use NetBeans more, but some of the tools I've used are exclusive for NetBeans:

  • ClearCase (thanks IBM!)
  • Android

android on eclipse does work for me. Never tried it under netbeans though - guyumu
Thanks for catching my typo. I meant "exclusive for NetBeans." - mparaz
It still isn't clear what you mean - Joe Philllips
27
[0] [2010-10-30 04:11:42] Jin Kwon

I use Netbeans. Actually I work with Maven.

Netbeans take maven project folders which include a pom.xml as its native project.

It doesn't have to import or install any stupid plugins. And it doesn't make any stupid dot files inside my project folder.

I really don't understand who uses Eclipse. I'm pretty sure there are a lot of so called Java developers can't make 'hello world' program without Eclipse.


28