So you want to write Java in Neovim
Neovim for Java: Appeal vs. Reality
- Many are intrigued by recent Neovim+Java setups, especially as an escape from heavyweight IDE “black magic.”
- Several people tried and bounced off: configuring LSP, debugging, and plugins was a large cognitive load compared to a Java IDE that “just works.”
- Common advice: unless Neovim is already your main editor, start with a dedicated Java IDE.
Navigation, Project Structure, and Fuzzy Finding
- Deep Java package paths and Maven-style layouts worry some; they find raw Vim directory navigation painful.
- Others say a fuzzy file finder (Ctrl-P, Telescope, fzf.vim, etc.) or file managers (yazi, oil.nvim, filepicker.vim) solve this, similar to JetBrains “search everywhere.”
- LSP-powered symbol navigation (
gd,gr) in Neovim can approximate IDE-style “go to definition/references.”
LSPs, JDTLS, and Alternatives
- Java on Neovim is typically powered by JDTLS; several complain it’s oddly complex compared to other language servers.
- A NetBeans-based Java LSP exists but isn’t commonly used here; status with Neovim is unclear.
- Some note that Java is a “special snowflake” in LSP setup, unlike languages where you just install the server and point the editor at it.
IDE vs Text Editor: Capabilities and Philosophy
- Ongoing debate: at what point does a plugin-heavy Neovim become an IDE in practice.
- Some emphasize minimal setups (tags + terminals, no LSP, sometimes no syntax highlighting); others insist autocomplete, refactoring, and instant feedback are too valuable to give up.
- Terminal-centric workflows are praised for speed, composability with CLI tools, and stability over time.
Java Tooling Exceptionalism (Especially IntelliJ)
- Strong consensus that Java IDE tooling, especially IntelliJ, is far ahead of LSP-based setups: powerful refactorings, inspections, debugging, code transformations, and ecosystem-aware features.
- Some argue this leads teams to structure code and builds around the IDE, which can hurt portability and non-IDE workflows. Others see it as simply using the best tools available.
AI IDEs, Cloud IDEs, and Future Directions
- AI-focused IDEs (Cursor, Zed) are seen as competitive with VSCode/Neovim, but not yet with language-specific Java IDEs.
- Cloud IDE experiments show high uptake only once IntelliJ is offered; VSCode-only environments mainly attract juniors.
- JetBrains’ AI features are viewed as decent and deeply integrated, but not universally loved; some find aggressive multi-line AI completions distracting.