nvim-jdtls
lsp-zero.nvim
nvim-jdtls | lsp-zero.nvim | |
---|---|---|
75 | 130 | |
926 | 3,515 | |
- | - | |
7.0 | 9.2 | |
about 2 months ago | 12 days ago | |
Lua | Lua | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nvim-jdtls
-
Having the worst time trying to use JDTLS
I recommend that you do not configure jdtls like the other language servers, it is better to use the nvim-jdtls plugin.
-
Noob here, would neovim work for my usecase
Java is actually pretty good with Neovim, jdtls and this plugin. One of the best language servers and I'm using it on a regular base with medium to large projects, mostly spring-based. No Android though.
-
Client 2 quit with exit code 1 and signal 0 when opening a .java files
-- See `:help vim.lsp.start_client` for an overview of the supported `config` options. local config = { -- The command that starts the language server -- See: https://github.com/eclipse/eclipse.jdt.ls#running-from-the-command-line cmd = { -- 💀 'java', -- or '/path/to/java17_or_newer/bin/java' -- depends on if `java` is in your $PATH env variable and if it points to the right version. '-Declipse.application=org.eclipse.jdt.ls.core.id1', '-Dosgi.bundles.defaultStartLevel=4', '-Declipse.product=org.eclipse.jdt.ls.core.product', '-Dlog.protocol=true', '-Dlog.level=ALL', '-Xmx1g', '--add-modules=ALL-SYSTEM', '--add-opens', 'java.base/java.util=ALL-UNNAMED', '--add-opens', 'java.base/java.lang=ALL-UNNAMED', -- 💀 '-jar', '~/.local/share/nvim/mason/packages/jdtls/plugins/org.eclipse.equinox.launcher_1.6.500.v20230717-2134.jar', -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ -- Must point to the Change this to -- eclipse.jdt.ls installation the actual version -- 💀 '-configuration', '~/.local/share/nvim/mason/packages/jdtls/config_linux', -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ -- Must point to the Change to one of `linux`, `win` or `mac` -- eclipse.jdt.ls installation Depending on your system. -- 💀 -- See `data directory configuration` section in the README '-data', '/path/to/unique/per/project/workspace/folder' }, -- 💀 -- This is the default if not provided, you can remove it. Or adjust as needed. -- One dedicated LSP server & client will be started per unique root_dir root_dir = require('jdtls.setup').find_root({'.git', 'mvnw', 'gradlew'}), -- Here you can configure eclipse.jdt.ls specific settings -- See https://github.com/eclipse/eclipse.jdt.ls/wiki/Running-the-JAVA-LS-server-from-the-command-line#initialize-request -- for a list of options settings = { java = { } }, -- Language server `initializationOptions` -- You need to extend the `bundles` with paths to jar files -- if you want to use additional eclipse.jdt.ls plugins. -- -- See https://github.com/mfussenegger/nvim-jdtls#java-debug-installation -- -- If you don't plan on using the debugger or other eclipse.jdt.ls plugins you can remove this init_options = { bundles = {} }, } -- This starts a new client & server, -- or attaches to an existing client & server depending on the `root_dir`. require('jdtls').start_or_attach(config)
-
Foot – A fast, lightweight and minimalistic Wayland terminal emulator
I can get by with https://github.com/mfussenegger/nvim-jdtls
-
[HELP] ftplugin and lazy loading in NvChad
This and this provided no viable solutions for me
- Anyone using nvim for Kotlin development?
-
Help for configure jdtls
I tried to configure jdtls for my NeoVim I followed https://github.com/mfussenegger/nvim-jdtls install instruction. and I faced this error does anyone successfully configured jdtls ? help T ^ T
-
Adding JAR files to nvim-jdtls
Am I adding it to the wrong configuration option? Some places I see it added as a referencedLibary - https://github.com/mfussenegger/nvim-jdtls
-
Does anyone config java for neovim?
Sure. Any server that lspconfig supports will work. But for java development is better if you use nvim-jdtls. The documentation in lsp-zero has a guide on how to setup nvim-jdtls.
-
I can't seem to figure it out
Here' my java.lua for nvim-jdtls which solves the nil issue and add more features.
lsp-zero.nvim
-
jdtls debugging "Could not resolve java executable: Index 1 out of bounds for length 1"
I'm using lsp-zero and i followed this tutorial https://github.com/VonHeikemen/lsp-zero.nvim/blob/v2.x/doc/md/guides/setup-with-nvim-jdtls.md and i have essentially just copy pasted the code from there into ~/.config/nvim/lua/plugin/jdtls.lua
- Embracing Neovim: Navigating Configuration Challenges and Seeking Guidance
-
Using nvim-lint as a null-ls alternative for linters
Personally, i think nvim-lint is the best alternative currently, specially so because it has no dependencies on external binaries. This guide assumes you already have your LSP set up with nvim-lspconfig (or an alternative like lsp-zero). You should also have an way to install the linters you are gonna need, i highly recommend Mason with mason-lspconfig.
- LazyVim
-
As someone new to neovim, should I even bother with LSP?
For those new to neovim, the documentation in lsp-zero has a tutorial that shows a configuration from scratch. It shows how to get a plugin a manager, a colorscheme, and setup lsp-zero.
-
Is there a way to configure LSP to 'just work'?
Try https://github.com/VonHeikemen/lsp-zero.nvim, a great introduction and it is pretty usable without any further config
-
How to configure vim like an IDE
For neovim, you can still use the same extensions; however there's also a built-in LSP client. The downside of using the built-in is you'll need to have more extensions installed/configured to get all the features out of the box...BUT projects do exist to help simplify that, like lsp-zero.
-
Your favourite Neovim plugins?
lap-zero.nvim - default config for nvim-lspconfig, mason.nvim, nvim-cmp.
-
How to make nvim-jdtls work with lsp-zero?
In version v2.x the keybindings you set on the "global" on_attach of lsp-zero should work without any extra config. v2.x also has a tutorial on how to work with nvim-jdtls: setup with nvim-jdtls
-
Help me to get the best python Neovim environment
Creator of lsp-zero suggested a complete solution to use ray-x/lsp_signature in this issue: https://github.com/VonHeikemen/lsp-zero.nvim/issues/69.
What are some alternatives?
nvim-lspconfig - Quickstart configs for Nvim LSP
null-ls.nvim - Use Neovim as a language server to inject LSP diagnostics, code actions, and more via Lua.
eclipse.jdt.ls - Java language server
nvim-lsp-installer - Further development has moved to https://github.com/williamboman/mason.nvim!
lua-language-server - A language server that offers Lua language support - programmed in Lua
coc-java - Java extension for coc.nvim
mason-lspconfig.nvim - Extension to mason.nvim that makes it easier to use lspconfig with mason.nvim.
java-debug - The debug server implementation for Java. It conforms to the debug protocol of Visual Studio Code (DAP, Debugger Adapter Protocol).
mason.nvim - Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.
nvim-cmp - A completion plugin for neovim coded in Lua.