Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nvim-jdtls news/updates (please subscribe) #3

Closed
mfussenegger opened this issue May 21, 2020 · 10 comments
Closed

nvim-jdtls news/updates (please subscribe) #3

mfussenegger opened this issue May 21, 2020 · 10 comments

Comments

@mfussenegger
Copy link
Owner

To get notifications about updates to nvim-jdtls subscribe to this issue.

@mfussenegger mfussenegger pinned this issue May 21, 2020
Repository owner locked as too heated and limited conversation to collaborators May 21, 2020
@mfussenegger
Copy link
Owner Author

nvim-jdtls now supports advanced organize imports - it now prompts for a choice if there are ambiguous import choices:

asciinema-6a2a413931d09553asciicast

@mfussenegger
Copy link
Owner Author

Not really an update, but some more demos of the functionality:

Extracting variables:

extract-variable

Extracing methods:

extract-method

Jumping into class files:

jump-into-class-files

@mfussenegger
Copy link
Owner Author

Added generate constructor support: (the UI to select the choices could use some improvements...)

asciinema-1683544d5b33c826asciicast

@mfussenegger
Copy link
Owner Author

Support for generating delegate methods:

asciinema-dbb6de59e954af40asciicast

@mfussenegger
Copy link
Owner Author

Two changes that probably warrant being mentioned here:

  • The setup_dap function no longer implicitly creates configuration entries for the main functions. You can now trigger it explicitly using :lua require('jdtls.dap').setup_dap_main_class_configs() or :JdtRefreshDebugConfigs. See the readme for details.
  • Hotcode replacement is now supported during debug sessions but by default it is not enabled. You've to call setup_dap like this to enable it: require('jdtls').setup_dap({ hotcodereplace = 'auto' })

@mfussenegger
Copy link
Owner Author

nvim-jdtls will soon require nvim 0.5.1 as minimum version. There were some changes between nvim 0.5.0 and nvim 0.5.1 that require some compatibility layers to continue working under both versions and I'm going to remove them soon.

@mfussenegger
Copy link
Owner Author

nvim-jdtls will soon (=couple days) require neovim 0.6 as minimum version.
If you're still on neovim 0.5.1 you can change to the nvim-05 branch

@mfussenegger
Copy link
Owner Author

It is now possible to change the java runtime via a JdtSetRuntime command:

recording.mp4

@mfussenegger
Copy link
Owner Author

Old news, but for those who don't update all that often: the custom code_action function of jdtls got removed a while ago . With the update to neovim 0.6 it is possible to use the built-in function (vim.lsp.buf.code_action) and get the full functionality including the extensions that nvim-jdtls provides.

The UI extension changed with that as well - it utilizes vim.ui.select, see https://github.com/mfussenegger/nvim-jdtls/wiki/UI-Extensions

@mfussenegger
Copy link
Owner Author

Closing this. Going forward I'll create releases. Probably roughly following eclipse.jdt.ls releases (if there are changes affecting nvim-jdtls). You can watch the releases of the repository to get notifications of future changes.

@mfussenegger mfussenegger unpinned this issue Jun 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant