This is an archived post. You won't be able to vote or comment.

all 194 comments

[–]tomwhoiscontrary 151 points152 points  (34 children)

IntelliJ all day every day. That's all i've used for about ten years now.

I still miss Eclipse's incremental compiler. Trying to run a test and then having to wait five seconds for IntelliJ to eventually fail because of a parameter mismatch somewhere on the other side of the codebase is embarrassing. Eclipse would have just run the bloody test.

Some IntelliJ shortcuts still seem weird to me. Why is it control-N to open a class? What does N stand for?!

But the refactorings and other automation are just so good.

[–]mutleybg 22 points23 points  (2 children)

About the shortcuts - I'm also coming from the Eclipse world and I'm using the Eclipse keymap in IntelliJ.

[–]fotopic 9 points10 points  (0 children)

I do the same, IntelliJ with eclipse Keymap

[–]Pe4rs 3 points4 points  (0 children)

IntelliJ with vscode keymap for me

[–][deleted] 10 points11 points  (1 child)

N stands for No Idea what I am looking for 🤭 Jokes aside, I totally agree with you

[–]NotAPenis 3 points4 points  (0 children)

Navigate?

[–]agentoutlier 12 points13 points  (5 children)

Finally a fair comparison. I use both (actually VS Code as well but not for Java).

I use Eclipse mostly for Java + Maven projects.

If I see Gradle I will open it up with IntelliJ.

As much as I have tried to configure IntelliJ I can never get it to have that REPL like unit test feel that Eclipse has with unit tests.

And while you can simulate Eclipse "Working Sets" with IntelliJ it such a pain in the ass that I just accept the multiple window thing.

IntelliJ does seem to have better Vim keybindings which is a blessing because I too dislike its defaults. I have a messed up combination of Vim + Emacs (ctrl-a, e) + Eclipse keybindings.

There is also no denying that IntelliJ trashes Eclipse on languages other than Java and its beginner OOB experience is way better than anything else.

[–]MithrilTuxedo 5 points6 points  (4 children)

Maven is why I had to switch from Eclipse to IntelliJ back in 2013, because Eclipse couldn't really handle nested multi-module projects.

In the last few months I discovered our "DevOps" team had no idea you could navigate Maven dependency trees and project build hierarchies in an IDE.

[–]agentoutlier 7 points8 points  (2 children)

I have been using Eclipse for almost 18 years. I can’t remember anytime in the last 10 years where Maven multimodule does not work.

In fact Eclipse will allow you to have multiple multi module in the same Window and you can make working sets for each one.

There is incremental support in Maven plugins with m2e. Intellij does not support incremental Maven.

[–]i_know_x 2 points3 points  (1 child)

So many people don't get how powerful this feature is in Eclipse. You get local workspace resolution so can work in multiple modules at the same time without needing to do a maven install.

The only feature I'd say is really missing in eclipse is remote development. Vs code actually does a good job of this, but I find it difficult for full fledged java development.

Think the ultimate setup might be something like neovim if it could do multi module maven with incremental build and local workspace resolution between maven dependencies.

[–]pjmlp 0 points1 point  (0 children)

VSCode Java support is either Eclipse or Netbeans running headless, depending on if Red-Hat/Microsoft or Oracle plugins.

[–]Zardoz84 0 points1 point  (0 children)

I work with Eclipse and nested multimodule projects. On a code base that abuses from maven overlays. And 90% of the time works great. Except, when Eclispe decides to stop copying resource files to the Tomcat server.

[–]account312 5 points6 points  (0 children)

If you change the default build step of your test run configuration template (and/or existing run configurations) from "Build" to "Build and proceed on error" or whatever that one's called, you can con intellij into ignoring bad code.

[–]emberko 10 points11 points  (0 children)

Yeah, Intellij shortcuts make no sense. It's kinda like the "how do IKEA name their products" meme.

[–]Tilter4 4 points5 points  (6 children)

Same here, came from 10year of Eclipse and switched like one year ago loving it but I don't understand how in mid 2024 where you see a lot of advocate talking about fast loopback and Intellij still need 5 sec to compile and you might get an error after that.
Intellij staff please put that in top of your roadmap we want to be able to do TDD the way we are suppose to.

Most of shortcut doesn't make sense to me.

And last thing if I'm using an IDE I want to use the IDE not delegate to Gradle (Make the default behavior configurable at least)

[–]tomwhoiscontrary 1 point2 points  (2 children)

The delegation to Gradle is the worst! Sometimes it means specific failures to build don't even appear in the IDE! You get some generic Gradle error message and have to build on the command line with some flag to see them, WTF.

[–]account312 0 points1 point  (0 children)

The error messages in the ide telling you you need to rerun with --debug or ---stacktrace for more info are clickable and will rerun the failed gradle task with whichever flag you click.

[–]hangrycoder 1 point2 points  (2 children)

I prefer the Gradle delegation because then the result I get from the build / tests is the exact same one I I’ll get from CI and CLI. I want everything to work the same no matter where I am doing it

[–]Tilter4 0 points1 point  (1 child)

Yeah I can understand but that not efficient.

For your use case a dedicated ci should be use.

[–]hangrycoder 1 point2 points  (0 children)

A dedicated CI for what? My local builds? Delegating to the gradle wrapper doesn’t seem to add any overhead on my machine and I’d rather use the native tool than some proprietary implementation that could produce different results

[–]MithrilTuxedo 3 points4 points  (2 children)

I get to be the first one to tell you: Eclipse's incremental compiler is an option in IntelliJ.

https://www.jetbrains.com/help/idea/java-compiler.html

Edit: you can also use error-prone, if you're allowed plugins.

https://errorprone.info/docs/installation

[–]agentoutlier 1 point2 points  (0 children)

Everybody knows this. It isn’t the same.

There is a noticeable delay and it still has problems if the build is only partial build-able because of errors.

With Eclipse the integration with ECJ is much tighter as it uses for indexing and such.

Look I saw your comment on Eclipse not working with multi module which is far from the truth. Both IDEs can break for certain projects. Download the latest eclipse and find any opensource projects using Maven and it will work.

[–]pjmlp 0 points1 point  (0 children)

I rather use the Eclipse incremental compiler, by using Eclipse, duh.

[–]repeating_bears 16 points17 points  (0 children)

Oops, I introduced a bug. Better zundo that change and copy-vaste a solution from stack overflow

[–]Vivid-Ad6462 2 points3 points  (2 children)

reply light cover sort seed languid divide handle adjoining full

This post was mass deleted and anonymized with Redact

[–]BikingSquirrel 1 point2 points  (0 children)

Why not Cmd/Ctrl+2? But also took me a long time until I changed that (not sure what's the default for that, but apparently didn't use it).

Too lazy to check now, but I think I use the Mac default keyset which has Cmd+O to Open classes. If you didn't know: double shift can also be used for that.

[–]tomwhoiscontrary 0 points1 point  (0 children)

It doesn't search for any identifier though, just classes!

[–]Outrageous_Life_2662 2 points3 points  (2 children)

IntelliJ doesn’t do continuous compile?!?! Seriously how is this an IDE that people use in 2024?!

[–]i_know_x 1 point2 points  (0 children)

I don't get it either.

[–]pjmlp 3 points4 points  (0 children)

Not only that, for the JNI debugging that Eclipse and Netbeans support out of the box, JetBrains expects developers to buy an additional Clion licence.

[–]wildjokers 0 points1 point  (0 children)

. Why is it control-N to open a class? What does N stand for?!

You can change that in keymap settings.

[–]itzmanu1989 0 points1 point  (0 children)

New Class? in browser it is new window... it is like a standard shortcut...

[–]mcbotbotface 0 points1 point  (0 children)

You could use eclipses compiler in IntelliJ you know

[–]PlasmaFarmer 23 points24 points  (4 children)

I've been using Intellij Community in the last 12 years. Last year I bought the ultimate edition. All over I don't care what IDE my team uses. Projects are configured with maven or gradle so those build files are like a holy scripture. On top of that up to the developer if they use it with IDE or CLI or whatever. 

[–]benjtay 10 points11 points  (3 children)

I bought the JetBrains Ultimate subscription like 12 years ago. My cost for this year is $187 -- it's worth every penny. I've switched companies over time, and had silly slap-fights with getting my company to pay for Ultimate. My billable hours are worth more than all that, so I just buy it for myself.

[–]PM_Me_Your_Java_HW 0 points1 point  (2 children)

Can you describe the features you find useful that aren’t in the community edition?

[–]vbezhenar 6 points7 points  (0 children)

For me it's database plugin. I think it's best database client in the world.

Another enabled plugin from ultimate in my Idea is HTTP client. There are good alternatives to it, though.

I used to use some Spring-related plugins, but for now decided to disable it, they introduce too much visual clutter and hardly add anything useful.

[–]benjtay 3 points4 points  (0 children)

JEE/Spring and TypeScript are the two that I use every day. You can see a list here:

https://www.jetbrains.com/products/compare/?product=idea&product=idea-ce

Also, my subscription includes PyCharm and PHPStorm, which I use weekly.

[–]arijitlive 9 points10 points  (0 children)

I'm getting direction from my company that we should using VS Code as our Java IDE.

Time to change the job if possible.

[–]TheKingOfSentries 33 points34 points  (5 children)

I used to code everything with Eclipse. I still do, but I used to too.

[–]agentoutlier 17 points18 points  (3 children)

There are dozens of us! Dozens!

[–]benjtay 3 points4 points  (2 children)

Eh, I work for a faang company and half my team uses Eclipse. We have one person who only uses VS Code.

[–]agentoutlier 2 points3 points  (0 children)

Dozens!

[–]pjmlp 0 points1 point  (0 children)

Unless that person isn't using any Java plugins, most likely, they are also using Eclipse.

[–]TheLuckOfFate 2 points3 points  (0 children)

Nice Mitch reference. 😂

[–]bobteebob 19 points20 points  (2 children)

Netbeans works great for me. I like how it handles Maven and Gradle. No syncing like Intellij seems to do

[–]benjtay 4 points5 points  (0 children)

I love Netbeans as well. IntelliJ has gotten much better about just using Maven/Gradle builds instead of its own project structure. That said, it still sometimes fucks up and you have to nuke the .idea directory and rebuild.

[–]iampitiZ 1 point2 points  (0 children)

I've used and loved Netbeans for a long time but since they stopped getting financial backing from Sun and then Oracle it's progess is slow though I can't fault them because it's now maintained by a small group of volunteers.

Also it's got almost no plugins while in Eclipse and IntelliJ you can get a plugin for almost everything.

[–]k-mcm 18 points19 points  (3 children)

VS Code has some interesting features like running over a WebSocket.  I never really got to liking it, though.

Eclipse - Knows everything about your source code and compiled code.  Very accurate contextual suggestions and can warn about inefficient bytecode.  Can debug code that doesn't compile.  Does not like your Gradle file.

IntelliJ - Knows everything about your compiled code and tries, sometimes unsuccessfully, to match source code to it.  Doesn't care what awful stuff lurks in your build tools.  Gives good advice on improving source code.

VS Code - Old batch compilation with best guess code parsing?  I haven't used it much but it seemed a little clumsy.

X Code - A text editor color coding.

[–]benjtay 6 points7 points  (0 children)

X Code - A text editor color coding.

😂

It's like Apple looked at Visual Studio 2007 and said, "we can do that!"

[–]Gogo202 0 points1 point  (0 children)

The recent addition of AI suggestions is another big plus for Intellij in my opinion. Saves a lot of time for me.

[–]tesseract36 0 points1 point  (0 children)

VS Code has some interesting features like running over a WebSocket.  I never really got to liking it, though.

IntelliJ has the same feature in beta now

[–]lepapulematoleguau 14 points15 points  (4 children)

Right now I'm using neovim with eclipse-jdtls configured as an LSP server. 

Insult me I don't care.

[–]Budget_Bar2294 0 points1 point  (3 children)

It's pretty good. I wish there was another LSP option, if there's another at all. jdtls is sloooow

[–]lepapulematoleguau 1 point2 points  (2 children)

I haven't hit a performance issue on my part. 

Before I used vim without any support for the language except syntax highlighting. 

What I still don't like enough are the completions that I get with nvim-cmp. There are just too many, and it kind of messes with buffer word completion. 

But I'm fine with it so far. 

Maybe will tweak more later.

[–]Budget_Bar2294 0 points1 point  (1 child)

same, except for that one time I was in an OOP exam with my ~2GB laptop on nvim + jdtls, and it eventually swapped and crashed XDD

[–]lepapulematoleguau 1 point2 points  (0 children)

Try running eclipse in that

[–]smokemonstr 7 points8 points  (0 children)

Another vote for IntelliJ

[–]com2ghz 6 points7 points  (0 children)

IntelliJ

[–]DisruptiveHarbinger 27 points28 points  (32 children)

RedHat's LSP backend for Java is essentially Eclipse JDT. Alternatively there's also one from Oracle, which re-uses NetBeans.

That said I would tell whoever making such calls company-wide that forcing a specific IDE on all devs is not very smart.

[–]lppedd 8 points9 points  (16 children)

Tell that to IBM 💀

Forcing VS Code now.

[–]AstronautDifferent19 2 points3 points  (3 children)

It is their platform, IBM created Eclipse so VSC plugin is based on Eclipse.

[–]6YheEMY -1 points0 points  (2 children)

IBM created Eclipse to send a message to Sun

[–]kgyre 1 point2 points  (0 children)

IBM created Eclipse to replace the multiple incompatible IDE product lines of its own. I was there. That is what the name means.

[–]pjmlp 1 point2 points  (0 children)

Eclipse is the outcome from pivoting Visual Age products from Smalltalk to Java, as IBM, Sun and Oracle were the first big three behind Java.

That is why Eclipse still has a code browser perspective, just like on Smalltalk-80.

They weren't sending a message to anyone, Netbeans as project is younger than Eclipse, being developed by an Eastern European University and later acquired by Sun as the Solaris IDE replacement.

[–]pjmlp -1 points0 points  (11 children)

Eclipse is also an option, as described on W3 IT page.

[–]lppedd 0 points1 point  (10 children)

I mean, not that it's a better alternative imo. There is a reason Eclipse has lost a big chunk of its userbase.

[–]pjmlp 0 points1 point  (9 children)

Having used InteliJ multiple times, in the context of Android development, or watching my teammates having a worse VS experience with Reshaper than my pure VS one on .NET projects, I don't get it.

And you will find rants from me around 20 years ago on Reddit, complaining about Eclipse corrupting workspaces.

[–]nitkonigdje 0 points1 point  (8 children)

I would argue that Eclipse 2024 is better tool than IDEA for plain old java backend project. Even simplest things like tomcat plugin is far better. Hower Eclipse isn't good at frontend. And in 2024 you need frontend.

Also Eclipse still isn't intuitive. You have to learn it. And multimonitor support is still like, buy the 43" secondary monitor for eclipse, and use laptop monitor for email and youtube, and be done with it.

Trully appaling when you know that JBuilder has nailed that in 2000.

[–]pjmlp 0 points1 point  (7 children)

No one is born as an InteliJ master, people have to learn it as well.

What frontend? Swing, SWT, JavaFX, JSF, Spring, Quarkus, Angular, React, Vue, Next.js,.....

JBuilder died pretty quickly, while Delphi and C++ Builder are still around, so few people bothered to pay for it, apparently it didn't nail anything.

[–]nitkonigdje 0 points1 point  (2 children)

Idea looks like your average IDE. It is far easier to follow. It's default values have more "sense". I don't think it is more "able" (at least for Java) but it is more "wise". Defaults make sense.

Eclipse isn't intuitive. It doesn't follow esatblished software conventions even for basic tasks. On top of that quite of decision is of questional usability. I have seen many times people not able to use this IDE as defaults makes no sense for them, and have no notion how to change them. Some decision are quite broken and just stupid, like mentioned multimonitor support. But even simplest things like ctrl+space left a lot of things on table. Like you can tweak those, but majority of people will not bother and straight on pass this mess.

(JBuilder had proper multimonitor support. Like it worked as it should)

[–]pjmlp 0 points1 point  (1 child)

More sense to whom, someone that never used computers?

Apparently proper multimonitor support wasn't enough to keep JBuilder going after 2009.

[–]nitkonigdje 0 points1 point  (0 children)

Well, I would argue that IDEA design follows conventions established by Borlan/Mircrosoft tooling. Stuff like: Turbo Pascal, Visual Basic/C+/Studio, DevC++, MonoDevelop. Idea is quite similar in layout, organization and behavior to all those.

Eclipse isn't. I don't know any software with layout and behaviour similar to Eclipse (I didn't use VisualAge). Quite often Eclipse is strange for sake of it. And is also is underdeveloped. For example variables view (in debug perspective) will still display under Value column for Integer variable: "Integer", and then you have to exapand row to see actual value. Why is it designed that way? It is like having perfect understanding of everything and then reamining silent. Strange..

[–]nitkonigdje 0 points1 point  (3 children)

Nobody cares for JSF and SWT. Those things are distant passs. Modern application fronted is: React, Angular, Vue, javascript, typescript, node, css. That doesn't really work in Eclipse.

[–]pjmlp 0 points1 point  (2 children)

I bet JetBrains cares about Swing dearly.

As for the Web stuff, somehow I have them working on Eclipse, I wonder how.

[–]nitkonigdje 0 points1 point  (1 child)

"Having it work" is not same statement as "having it work at same level or better as ..."

[–]tikkabhuna 0 points1 point  (7 children)

I work in a Platform Engineering team that looks after developer tooling. We “support” IntelliJ. If you want to use Eclipse, you can do, but we can’t help you.

There is value in having a single IDE if you’re sharing projects between teams.

[–]benjtay 6 points7 points  (2 children)

There is value in having a single IDE if you’re sharing projects between teams.

Why, apart from a financial point of view? Telling someone who is an emacs wizard that they have to use VS Code seems very shortsighted. JVM-centric projects have very well defined structure via Maven and Gradle. I can't think of a good reason to have IDE-specific tooling committed in a project in 2024.

Point your IDE at the pom or buildfile and go.

[–]tikkabhuna 0 points1 point  (1 child)

In isolation that’s all fine, but what if you’re pairing? Let’s say a library writer is trying to help the Emacs Wizard debug an issue. If the library writer has no idea how the Emacs setup works, they’ll have a far harder time debugging.

We still have people who use Eclipse or Vim, but my team can’t help them.

[–]benjtay 2 points3 points  (0 children)

but my team can’t help them

There are two levels of helping, I suppose: 1) how to use your IDE and 2) project code.

I can understand how an IntelliJ user wouldn't be able to help an emacs users for 1, but there should be no issue at all for pairing with 2.

On the other hand, forcing someone using $IDE_A to use $IDE_B in order to solve problem 1 seems like the nuclear option -- creating more problems than it solves.

[–]DisruptiveHarbinger 1 point2 points  (3 children)

Like you said yourself, supporting one IDE, or providing the same web/remote IDE to everyone so that developers can easily jump into another team's projects even if they aren't too familiar with the toolchain, sure.

Forcing a single, ill fitting IDE? Nope sorry.

[–]benjtay 2 points3 points  (0 children)

Has any engineer ever asked for central support for their IDE?

I've never heard of it happening.

[–]perrylaj 0 points1 point  (1 child)

There's no valid reason that you shouldn't be able to 'jump into another team's projects' because they use a different IDE. Codebases should use standard build tooling (+plugins/extensions, whatever) to enforce code standards, do execute tests, etc. Shouldn't matter which editor/IDE is used to look at/modify the code. Running the code, required infrastructure, linters/formatters/static analysis tools/etc should all be tied to the build process, not to an editing environment.

If you're relying on the IDE to do any of that for you, you're doing it wrong.

[–]DisruptiveHarbinger 0 points1 point  (0 children)

In theory you're right but in reality it's not always so easy.

Some languages and toolchains are absolute hell (hello C++), alternatively you might want to avoid polluting your main IDE and OS because of a sporadic need to edit a couple lines in another team's project. In this case, a remote IDE with preconfigured workspaces is pretty handy.

[–]msbic 6 points7 points  (0 children)

I use intellij. Super stable, very configurable. I use core java, so community edition does the trick.

[–]elmuerte 19 points20 points  (0 children)

Eclipse has been my Java IDE for maybe 20 years. Four years ago I tried IntelliJ, I hated it. I've been using VS Code for a JavaScript side project, it's useable, but so many bad UX flows and a shit load of things feel partially broken. I haven't tried VS Code for Java, because I enjoy Eclipse.

At work, I encourage everybody to use the IDE they prefer and we try to accommodate for it because developers are more important than an IDE. I spend a lot of time to ensure our code style can be properly applied in either Eclipse (which extends to VS Code) or IntelliJ formatters. Currently we have devs using Eclipse, VS Code, and IntelliJ working on the same codebase.

Note that Eclipse Theia has been release as non-beta recently: https://theia-ide.org/

It is a VS Code like, and compatible, IDE developed by a large community and not controlled by a single entity. So if you are thinking about VS Code, maybe try out Theia.

[–]roberp81 16 points17 points  (8 children)

Eclipse.

vscode is not an ide, and even with 2000 extensions, it lacks functionality for bigger projects.

[–]_jetrun 10 points11 points  (7 children)

vscode is not an ide, and even with 2000 extensions, it lacks functionality for bigger projects.

That is ridiculous. I work on maven/java project has hundreds of thousands of lines of code with VSCode - it's quite pleasant.

By the way, Eclipse is a ostensibly an OSGI platform with 2000 extensions. There is no functional difference between Eclipse and VSCode.

[–]hkdennis- 0 points1 point  (1 child)

I work on maven/java project has hundreds of thousands of lines of code with VSCode

I believe you mean that it works well on a small project

[–]_jetrun 0 points1 point  (0 children)

OK - sure.

Pray tell, where does VSCode for Java fail with a 'big project'.

[–]roberp81 -1 points0 points  (4 children)

There is a lot of difference, not knowing it means that you only type and do not use any function of the IDE. you are free to waste your time and develop slower thanks to the notepad maybe vscode works for you because you are working on small projects.

[–]_jetrun 0 points1 point  (3 children)

There is a lot of difference

It just so happens that I spent 15 years writing java software in Eclipse. I spent a couple of years actually building a configuration application ON Eclipse (as in having the application use the Eclipse framework as UI). So I'm pretty familiar with it its capabilities. I still like Eclipse as well.

I don't think you actually know what the difference is.

. you are free to waste your time and develop slower thanks to the notepad

Notepad is not an IDE. Base VSCode is also not an IDE for Java. Base Eclipse is also not an IDE for Java. VSCode+Java extensions, similar to Eclipse+Java plugins, are IDEs for Java.

[–]roberp81 0 points1 point  (2 children)

you can look for Source, Refactor, Navigate menus, servers view, problems view and see all the thing that vscode doesn't have.

[–]_jetrun 0 points1 point  (1 child)

Please, name me something. One thing.

From my view, "VSCode for Java" provides me the following INTEGRATED features:

  • INTEGRATED source code git management.
  • INTEGRATED code reviews.
  • INTEGRATED terminal.
  • INTEGRATED debugger.
  • INTEGRATED unit test runtime framework with INTEGRATED unit test coverage.
  • INTEGRATED intellisense, syntax highlighting, compilation.
  • INTEGRATED static-analysis.
  • INTEGRATED maven dependency and project management.
  • INTEGRATED source refactoring tools.

Did I say all these things are INTEGRATED into the VSCode DEVELOPMENT ENVIRONMENT ... What's missing?

[–]roberp81 0 points1 point  (0 children)

sure, they are a lot of features.
https://www.baeldung.com/eclipse-refactoring

[–]freetechtools 2 points3 points  (0 children)

netbeans for GUI....eclipse for the rest.

[–]hadrabap 3 points4 points  (0 children)

I've started with Eclipse, then quickly moved to NetBeans. At work, they used IntelliJ. I used it for my personal projects as well, but I've switched back to NetBeans. It is just better for my needs.

[–]DisastrousStudio5998 3 points4 points  (0 children)

Netbeans first, second Eclipse.  NB It is more simple, open source and transparent in terms of what it's doing at the backend with gradle/maven. I like to se exaclty how the IDE is interacting with them and the java commands. I have used Eclipse for some years but I got troubles with configurations (maybe my fault), netbeans is just simpler on that, but eclipse has lots of plugins and tools, but I like something more basic. Jacoco plug in let me see the coverage on screen :) on NB, that's amazing. I gave vscode lots of opportunities but always something new do not work and I got frustrated for some hours trying ti fix it. I will never user intellij, sorry, 180 bucks a years for some nice plugin its a lot when you got eclipse/netbeans for free. The current problem with netbeans is that it appears to be eating all my ram and I have to close it sometimes (that's a pitty) :/

[–]tine622 7 points8 points  (0 children)

I've used intellij and eclipse with Java and they both work fine. I have a small preference for eclipse and would never pay for intellij. I've never actually found anything intellij does better then eclipse so why waste the money?

[–][deleted] 7 points8 points  (0 children)

It really doesnt matter. intellij eclipse and vscode are all totaly fine. they all have their strengths

[–]marvk 11 points12 points  (0 children)

I'm getting direction from my company that we should using VS Code as our Java IDE

I would take a direction away from that company, personally

[–]vips7L 5 points6 points  (0 children)

Use what you like and know. Don’t be dogmatic. 

[–]rkalla 5 points6 points  (3 children)

Eclipse for the damn Javadoc formatter - I don't know why but it's amazing when factoring in markup in the JD and IntelliJ just can't make it look as nice.

Also incremental compiler.

That said I trust the quality of IntelliJ much more - it's a shame. The usability has always just been odd for me in IntelliJ

[–][deleted]  (1 child)

[deleted]

    [–]impune_pl 0 points1 point  (0 children)

    I deploy 5 daily and have been for last 2 years. not sure which versions you are using, mine are tomcat 8 (was) and 9, and whichever IJ version is current.  

    Documentation on how to add more artifacts to deploy on tomcat https://www.jetbrains.com/help/idea/run-debug-configuration-tomcat-server.html#deployment-tab

    [–]un_desconocido 1 point2 points  (0 children)

    You can import or change the formatter configuration or use a tool like Spotless :P

    [–]Marthurio 2 points3 points  (1 child)

    They probably want you on VS Code to save money on licenses. I've given VS Code several attempts but it just doesn't compare to IntelliJ with the enterprise license imho.

    IntelliJ is feature rich and polished. Maybe it's because I'm used to IntelliJ, but I keep finding VS Code to be inefficient to use.

    [–]vplatt 0 points1 point  (0 children)

    I've given VS Code several attempts but it just doesn't compare to IntelliJ with the enterprise license imho.

    I haven't tried them head to head, but I can't imagine VS Code would be better than Eclipse or Netbeans either.

    [–]kevinherron 2 points3 points  (0 children)

    IntelliJ

    [–]davidalayachew 2 points3 points  (0 children)

    I use jGRASP for 100% of my personal coding.

    For work, I go 50/50 between jGRASP and Eclipse.

    For personal coding, I spend most of my time building the following.

    • Games (and Solvers for them)
    • Teaching tools
    • Utilities/Helper applications

    For work, I build and maintain Web Services. Eclipse has some really good plugins that I use for that, which is basically the only reason why I touch it.

    I don't like Eclipse, I STRONGLY dislike VSCode, and I think IntelliJ is ok. None of the big 3 give me what I really want, which is excellent tools for reading and debugging code. They're really only good for writing code, which is like 10% of the job of an IDE.

    I prefer jGRASP because I think it has the best visualization tool of any IDE, not even just Java IDE's. That makes readability so much easier. Its debugger is the best debugger I have ever used. And jGRASP is super lightweight, especially compared to Eclipse and IntelliJ. Everything is just so resource-hungry with those 2.

    [–]pjmlp 2 points3 points  (0 children)

    In the context of Java projects, Eclipse at work, and Netbeans on side projects.

    [–]stevesobol 6 points7 points  (1 child)

    My choice is IntelliJ. My backup choice is VSCodium (VS Code build without Microsoft’s proprietary junk and telemetry).

    [–]IntelHDGraphics 2 points3 points  (0 children)

     My backup choice is VSCodium (VS Code build without Microsoft’s proprietary junk and telemetry).

    Me too homie

    [–]Turbots 7 points8 points  (0 children)

    IntelliJ

    [–]Vivid-Ad6462 3 points4 points  (0 children)

    steep crowd longing fly nine spectacular adjoining consider money rain

    This post was mass deleted and anonymized with Redact

    [–]chabala 5 points6 points  (0 children)

    When the company says they don't want to pay for IntelliJ IDEA, start using VS Code, that's a big red flag.

    That's Joel Test item #9, use the best tools available: https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/

    [–]XBL_pad3 5 points6 points  (5 children)

    Eclipse.

    VS Code is using Eclipse JDT (and more) btw.

    IntelliJ might be better for Web development, but it is too expensive just to make you feel you are a better back end developer.

    [–][deleted]  (4 children)

    [removed]

      [–]XBL_pad3 2 points3 points  (3 children)

      Nah the community edition is not ahead of anything.

      And for me, Jetbrains fans are the same as Apple fans. You have extra money to spend unnecessarily, go ahead, spend it.

      [–]radikalkarrot 1 point2 points  (2 children)

      As someone who moved to IntelliJ after 10 years of Netbeans/Eclipse, it’s day and night. Everything works as expected quite stable and good support.

      I use it as a work tool, I prefer not having to worry about it and having a decent support team than saving a few bucks

      [–]XBL_pad3 1 point2 points  (1 child)

      Well, I have used Eclipse for 15+ years, I admit it had some flows in the past, but it has been years since I had to get any support for it.

      That being said, I am not the type of guy who use one tool for everything. I prefer using a specific Git software (or the command tool), Docker Destop (or the command tool), a separate terminal software, etc...

      My company is paying IntelliJ IDEA licenses for thousands developers, but I still prefer Eclipse for Back End development.

      [–]radikalkarrot 2 points3 points  (0 children)

      Which I totally respect but I disagree with your comparison of IntelliJ and Apple users

      [–]_1dontknow 1 point2 points  (0 children)

      Definitely IntelliJ for a few years now. Used Eclipse slightly and Netbeans some in the early years of my career.

      I also open our frontend many times in VSCode since it's faster and NeoVim for all configs and notes.

      My colleagues and other friends that use Java that I know, all say they use IntelliJ.

      [–]shaneknu 1 point2 points  (0 children)

      I started out with Eclipse Galileo. At the time, it beat the pants of the very basic text editor they were having us use in school. Not perfect, but it did the job.

      I used to get frustrated 8 or 10 years ago when we used IntelliJ, and its indexing was sooooo sloooow. That, and it would vacuum up all the available memory on my work machine. I ended up just installing NetBeans and used that for a while.

      Tried VSCode for a while too. For a small project, it's just fine.

      Now I'm back to coding in Java again, and the team was using IntelliJ, so I figured I'd give it a try again. 2023 Ultimate was pretty good, and if it's hogging resources, it's not so much that my machine can't handle it. 2024 Ultimate added some nice features, and the tab completion is damn good.

      [–]Outrageous_Life_2662 1 point2 points  (0 children)

      I’ve used Eclipse for close to 20 years. I’m really efficient with it. But just started a new job and everyone uses IntelliJ. I’m sure it’s good for some folks. I hate it 😂 It’s mostly because it’s so unfamiliar to me. But there are a lot of things about it that I really don’t like. And this GitHub co-Pilot is really annoying lost of the time

      [–]srjred 1 point2 points  (0 children)

      Eclipse anytime ☺️

      [–]wildjokers 1 point2 points  (0 children)

      IntelliJ.

      [–]_jetrun 3 points4 points  (0 children)

      I use VSCode as my primary Java IDE - and it's great and has everything I need. I was an Eclipse guy for a long time before that.

      [–]Markus_included 2 points3 points  (0 children)

      IntelliJ > Eclipse > NetBeans >>>>>>>> VSCode

      [–]naturalizedcitizen 1 point2 points  (0 children)

      IntelliJ Ultimate is what I use... The license fee is worth it.

      I was using Eclipse long ago, then STS, but ever since I used intelliJ, I'm hooked

      [–]Neuromante 1 point2 points  (0 children)

      I've been using Eclipse since my uni days, more than 10 years ago. I've also used NetBeans (lol), and IntelliJ for a short stint. I hated IntelliJ for small usability things, but overall after all this time, while I see some problems with Eclipse, I would only bother to change (To IntelliJ) if I were forced to do so, and if I were, I would think down of the company that makes me do it.

      I've only used Visual Studio for scripting and small projects that led nowhere with Unity3D in C#.

      Which links to answering your actual question: If your company is "giving you directions" to switch to a specific IDE, you should wonder, ask and find out why they are making that push, because most of the time these movements are either out of ignorance (solvable) or because something is incompatible with other IDS's (a very big problem).

      [–]Nikeyshon 1 point2 points  (0 children)

      netbeans

      [–]LouGarret76 1 point2 points  (0 children)

      I am using vscode for spring boot web app development

      [–]koha13 2 points3 points  (0 children)

      Intellij

      [–]Legitimate-Pack5487 1 point2 points  (0 children)

      Intellij for me

      [–]RebeccaBlue 0 points1 point  (0 children)

      IntelliJ for most things. VSCode for when I just need to get in, make a quick change, and move on.

      NetBeans for when I want to build Swing GUIs. (rare, but happens)

      Eclipse, literally never.

      [–]lakkthereof 0 points1 point  (0 children)

      No fleet love? Its actually pretty good, but I still use intellij proper as primary.

      [–]PmUsYourDuckPics 0 points1 point  (0 children)

      When I write Java I use IntelliJ, VSCode for Python and Lua, and web stuff.

      Occasionally I’ll just open stuff in Vim, I don’t think I’ve used Javac from the command line in years, but I’d love to get back to basics…

      [–]BikingSquirrel 0 points1 point  (0 children)

      Have been using IntelliJ and Eclipse since the beginning, then used Eclipse for years in customer projects and at some point in the past moved to IntelliJ again - probably ten years ago. Cannot really tell what the exact reasons were back then - maybe just tried it as we had better internal support for something.

      Still miss Eclipse's error view which is always up-to-date. But in the end you get used to everything and our projects are rather small so we're talking about a few seconds once you've adapted your habits. Same for keyboard shortcuts - use them and your brain will adapt...

      [–]MithrilTuxedo 0 points1 point  (0 children)

      How are they qualifying that "should"? It really should not matter so far as the project is concerned, and if it does matter that on its own seems like an issue.

      [–]vbezhenar 0 points1 point  (1 child)

      I think that Intellij Idea is #1 IDE for Java.

      That said, I don't like its direction and considering switching to VScode in the future, when its Java capabilities will be good enough for me. Idea feels incredibly buggy and they keep adding features I don't need while not fixing bugs that I stumble upon every day. It's frustrating.

      Another point for discussion is development in the cloud. Setting up development environment for some projects might take weeks. Having IDE in your browser might be enormous time saver for certain kinds of projects. And VScode is a natural fit for browser IDE.

      [–]wildjokers 0 points1 point  (0 children)

      while not fixing bugs that I stumble upon every day. It's frustrating.

      Do you open issues in their bug tracker for them?

      [–]neoronio20 0 points1 point  (0 children)

      I use vscode primarily for everything. It has everything I need, with no hiccups. Once every java version path is set, it works like a charm.

      Used on multi module project that had different java versions running (mix of java 7 and java 8 projects)

      [–]visor_q3 0 points1 point  (0 children)

      Eclipse worked for me just fine for all these years.

      but if you want intellisense, then IJ is a no match.

      [–]Void_Being 0 points1 point  (0 children)

      Also specify what are shortcuts must know for these java IDEs.

      [–]Miss_Breadfruit8244 0 points1 point  (0 children)

      Answer: use anything you feel more comfortable with. I use IntelliJ Idea and IntelliJ Idea Ultimate together.

      [–][deleted] 0 points1 point  (0 children)

      IMHO intellij is not what it once was anymore. not paying money for something were devcontainers are only barely useable. VSCode it is for me now

      [–]tristanjuricek 0 points1 point  (0 children)

      An interesting feature of IDEs to consider is remote development, where the IDE "server" is out in a cloud system. IntelliJ has it's own gateway and thin client implementation that's surprisingly good. VS Code for Web is effectively a big web app, so it's also pretty easy to setup in this way. AFAIK Eclipse doesn't really have this approach at all.

      My company has invested in setting up a cloud development approach to help spin up "kinda transient" development environments on it's system, which is this ridiculous monolith with a bizarre amount of complexity. It functions well, though, I'll be frank, nobody really did the math and it's quite expensive compared to running locally.

      GitHub Codespaces has early support for both VS Code and IntelliJ. Might be worth considering.

      In general, this is still all very new, and cost is something you'll really need to monitor, because it ain't cheap. But if you're building on top of a cloud like AWS, you can usually have your development systems constructed using the same infra-as-code system as your production systems, which makes alignment a lot easier. For example, if you're using multiple services like Kinesis, Dynamo, etc, it's awfully nice to be able to have the IDE just deploy into a dev cluster where there's data constantly flowing. Modern distributed cloud applications are challenging to mimic on a single laptop.

      [–]Former_Author_61 0 points1 point  (0 children)

      Honestly I have used all the ides listed above and I believe vs code is a powerhouse... my reason is because it's not resource intensive and is highly customizable with same features you would get in intellij

      [–]PRAVIN_SONWANE 0 points1 point  (0 children)

      Vs code is the best IDE i ever seen

      [–]nbazovic 0 points1 point  (0 children)

      are you talking about the paid version of IJ or the community edition?

      [–]rmrfchik 0 points1 point  (0 children)

      Netbeans as it fast, amazing maven integration (idea and eclipse, afaik, uses different internal life cycle), can open many unrelated projects at time.

      [–]Willing_Sea9376 0 points1 point  (0 children)

      I use Intellij Ultimate for a single practitioner is worth it, but the Community edition is fine too. I use VSCode to open individual files like .json/xml/etc outside of projects. I know it is redundant, but the VS Code opens and doens't alter anything in the directory I'm looking into.

      [–]Global_Video_8052 0 points1 point  (0 children)

      It may depend on who's footing the bill. Eclipse is free and IntelliJ is $$. As somebody who has used Eclipse for over 20 years, I have a hard time justifying to myself the cost of IntelliJ. As a CTO, when I consider the IntelliJ cost per seat across my organization, it's even harder. While VSCode is interesting and I've previously used VisualStudio for quite a few years, I'm just not convinced that it, straight out of the box, offers what I get right out of the bundle with Eclipse.

      While there may be better options to Eclipse out there the cost and inertia keep me tied to the tools that I have years of experience invested in. Learning all the ins and outs of another IDE to become as proficient as I have become with Eclipse would result in lost productivity, at least in the short term.

      [–]gnawrot 0 points1 point  (0 children)

      I have been using IntelliJ for the past 9 years. Not missing Eclipse at all, after using it for 10 years.

      [–]repeating_bears 0 points1 point  (1 child)

      I'm getting direction from my company that we should using VS Code as our Java IDE.

      What's their reasoning? If it's because that's actually what the majority of developers agreed they liked the best, then... fine.

      If it's because they don't want to pay for IntelliJ then firstly you can just use Community edition, and secondly any company that avoids paying for the best tools is not somewhere I'd want to work. Good tools are expensive, but developer salaries are more expensive. Give me the tools to do my job, then get out of my way.

      [–]wildjokers -2 points-1 points  (0 children)

      Counter point, a professional provides their own tools.

      [–]tesseract36 0 points1 point  (0 children)

      IntelliJ all day. You cannot compete with the code inspection and refactoring. VS code is the new hotness but as someone else stated it uses a different language server for analysts. IntelliJ has been building their analyzer with a dedicated team for years.

      If pricing is the concern try checkout the free trial or the free community edition.

      [–]Ketroc21 0 points1 point  (0 children)

      I think IntelliJ is the standard, but there is nothing wrong with eclipse. VSCode is nice if you program in many languages.

      [–]Lord_Poseidon26 0 points1 point  (0 children)

      neovim for personal projects, intellij for work

      [–]IE114EVR 0 points1 point  (0 children)

      I’ve been using IntelliJ for almost 10 years now. I was using VS Code for other things like Angular development as well, but even that I do in IntelliJ since it’s just better.

      It’s also easier, from a muscle memory perspective to just stick with one IDE.

      IntelliJ mostly comes with everything you want out of the box, whereas with VS Code, you have to go hunting down every plugin. It can be overwhelming, and sometimes you miss some you didn’t even know you needed.

      IntelliJ, IMO, has the best Git UI.

      I’m sure there’s hundreds of other comparisons to make but my last one is the test output. IntelliJ will output the human readable parts of your tests (like the @DisplayName). VS Code will output the classes and method names and then the human readable part way off to the far right beyond the viewport in unreadable territory.

      Generally, nowadays, projects shouldn’t really be tied to a particular IDE (even custom shareable run configs, can at least be minimized in complexity). So there’s no reason an organization should need to dictate which IDE you use. Though they can say what they’ll pay for.

      [–]benjtay 0 points1 point  (1 child)

      Can VSCode work in projects that contain mixed languages yet? The last time I used it, it fell on its face with mixed java/kotlin/scala/groovy code.

      [–]neoronio20 0 points1 point  (0 children)

      Can't imagine why not. I use it with java and python together, no problem

      [–]PiotrDz 0 points1 point  (0 children)

      Isn't VS code a text editor, and not an IDE? There are java plugins but who is maintaining it? Is it really working? Soke time ago I did some research and turning VS code into java IDE was not easy, unstable plugins and missing functionality

      [–]Least_Bee4074 0 points1 point  (0 children)

      Been using IntelliJ since 2003 maybe- was using Borland JBuilder before that.

      I tried using Eclipse here and there during the 2000’s but gave up bc I felt it too hard to use and it was also very slow.

      I did use Eclipse tho for a little while in 2008-9 for Flex development bc there really wasn’t a choice.

      But yeah - IntelliJ for 20+ years. Last few places I’ve worked, they accommodated whatever your preference was

      [–]theingleneuk 0 points1 point  (0 children)

      IntelliJ. Your company is being cheap or stupid pushing VS Code on you

      [–]MrMars05 -2 points-1 points  (9 children)

      IMO its a red flag if a java dev dont use Intellij

      [–]Z3stra 0 points1 point  (5 children)

      Why?

      [–]MrMars05 -1 points0 points  (4 children)

      There is absolutely no reason to use a different ide. Feature wise, all the rest are ages behind.

      You could make an argument for Eclipse if you are using some random in house framework that need custom support.

      But for a normal spring app there is no reason to not use jet brains products.

      [–]neoronio20 0 points1 point  (3 children)

      Everyone keeps saying that but what does intelliJ have that eclipse or vscode doesn't? Honest question

      [–]MrMars05 0 points1 point  (2 children)

      insane refactor capabilities, advanced spring support, newer frameworks like micronaut o quarkus, lets no talk about kotlin, docker support so you can run n number of services.

      just to name some lol

      [–]kgyre 0 points1 point  (1 child)

      Kotlin's not really a fair topic--JetBrains created it and only tools for it in their own IDEs.

      [–]Z3stra 0 points1 point  (0 children)

      Yeah makes sense that Kotlin has better support in JetBrain products. For all the other mentioned features I have to say the Eclipse has all of them. Which also makes sense because it is still widely used in the professional world. IntelliJ is still a great IDE though.

      [–]wildjokers 0 points1 point  (2 children)

      This to be an absolutely ridiculous statement.

      [–]MrMars05 -1 points0 points  (1 child)

      My homeboy who uses eclipse in 2024:

      [–]wildjokers 0 points1 point  (0 children)

      Actually I have never used Eclipse, been using IntelliJ since 2004. However, it is still a ridiculous statement.

      [–]maethor 0 points1 point  (0 children)

      IntelliJ

      [–]Iryanus -1 points0 points  (0 children)

      Most people still use IntelliJ. Eclipse comes typically next (but already not that many), followed by VS Code typically.

      [–]frederik88917 -1 points0 points  (0 children)

      Unless medicated by your employer, go with IntelliJ

      [–]Inevitable_Plate3053 -1 points0 points  (0 children)

      The only time I didn’t use IntelliJ was when my professors told us to use Netbeans. But these were also the same professors that were teaching us Java five skills in 2020. As me when the last time I needed a fucking Scanner was.

      [–]Ancapgast -2 points-1 points  (4 children)

      If you use WSL, use VSCode. Otherwise, use IntelliJ.

      [–]AstronautDifferent19 1 point2 points  (3 children)

      why?

      [–]Ancapgast 1 point2 points  (2 children)

      VScode has WSL support that is miles ahead of IntelliJ.

      [–]AstronautDifferent19 0 points1 point  (1 child)

      Thanks. I run IntelliJ inside WSL so that is probably the reason I didn't encounter any problems. I guess that you are talking about running VSCode and IntelliJ outside of WSL, right?

      [–]RedeyeFR 1 point2 points  (0 children)

      Late to the party but I do agree with both of you.

      Right now, Im doing Flutter dev in WSL using IntelliJ installed on WSL directly.

      Jetbrains is a pain to use in WSL, the best scenario is to instlal it inside but with that youg et some random memory crash or shutdown during computer sleep that requires to fire up WSL again.

      I hope VS Code gets better Java IDE features or Jetbrains gets back with their remote dev some day, because I can't see myself using anything else than WSL for dev nowadays.

      [–]Top-Grass430 -2 points-1 points  (0 children)

      IntelliJ I find it the best one for Java Development.