Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions doc/nvim-java-core.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,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: