This repository was archived by the owner on Nov 30, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathnvim-java-core.txt
More file actions
74 lines (50 loc) · 2.99 KB
/
nvim-java-core.txt
File metadata and controls
74 lines (50 loc) · 2.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
*nvim-java-core.txt* For Neovim >= 0.9.4 Last change: 2023 November 15
==============================================================================
Table of Contents *nvim-java-core-table-of-contents*
1. nvim-java-core |nvim-java-core-nvim-java-core|
- Features |nvim-java-core-features|
- Why |nvim-java-core-why|
- How to Use |nvim-java-core-how-to-use|
==============================================================================
1. nvim-java-core *nvim-java-core-nvim-java-core*
No need to put up with jdtls <https://github.com/eclipse-jdtls/eclipse.jdt.ls>
nonsense anymore. Just install and start writing `public static void
main(String[] args)`.
FEATURES *nvim-java-core-features*
are supported features. are pending features.
- Diagnostics & Auto Completion
- Automatic DAP <https://github.com/mfussenegger/nvim-dap> debug configuration
- Running tests
WHY *nvim-java-core-why*
- Uses nvim-lspconfig <> to setup `jdtls`
- Uses `jdtls` and auto loads `jdtls` plugins from mason.nvim <https://github.com/williamboman/mason.nvim> (If they are installed)
- Supported plugins are,
- `lombok` (mason `jdtls` package contains the lombok jar. So no need to installed it separately)
- `java-test`
- `java-debug-adapter`
- Typed & documented APIs
- No callback hells I promise <https://github.com/pyericz/promise-lua>
HOW TO USE *nvim-java-core-how-to-use*
>lua
local java = require('java-core')
local dap = require("java.dap")
-- update dap config on attach event
dap.setup_dap_on_attach()
require('lspconfig').jdtls.setup(java.get_config())
vim.api.nvim_create_autocmd('LspAttach', {
callback = function(args)
local buffer = args.buf
-- add your language server keymaps here
end,
group = vim.api.nvim_create_augroup('LSP Keymaps', {}),
})
<
==============================================================================
2. Links *nvim-java-core-links*
1. *Neovim*: https://img.shields.io/badge/NeoVim-%2357A143.svg?&style=for-the-badge&logo=neovim&logoColor=white
2. *Lua*: https://img.shields.io/badge/lua-%232C2D72.svg?style=for-the-badge&logo=lua&logoColor=white
3. *Java*: https://img.shields.io/badge/java-%23ED8B00.svg?style=for-the-badge&logo=openjdk&logoColor=white
4. *Gradle*: https://img.shields.io/badge/Gradle-02303A.svg?style=for-the-badge&logo=Gradle&logoColor=white
5. *Apache Maven*: https://img.shields.io/badge/Apache%20Maven-C71A36?style=for-the-badge&logo=Apache%20Maven&logoColor=white
Generated by panvimdoc <https://github.com/kdheepak/panvimdoc>
vim:tw=78:ts=8:noet:ft=help:norl: