yegappan / lsp

Language Server Protocol (LSP) plugin for Vim9
MIT License
458 stars 49 forks source link

javadoc completion under jdtls #440

Closed Konfekt closed 7 months ago

Konfekt commented 7 months ago

With a set up such as https://github.com/yegappan/lsp/wiki#eclipse-java-language-server could someone confirm a working set up Javadoc on :LspHover and in particular for omni completion? Somehow neither :LspHover nor omni completions shows java doc information. Is there a path problem? $JAVA_HOME, $JAVA_ROOT, $JAVA_BINDIR are pointing to the corresponding folders in /usr/lib64/jvm/java-17-openjdk-17/ in Opensuse 15.5

Shane-XB-Qian commented 7 months ago

per my last check, yes, it works. but that cfg in wiki just some example, you need adjust it per your need, and the jdt itself instr.

Konfekt commented 7 months ago

Thank you! Somehow LspHover partially worked, but now no longer. Javadoc on completion no longer works. Would you mind sharing your set up? How to check that Javadoc is found by jdtls?

Shane-XB-Qian commented 7 months ago

donot know what you mean 'no longer works', and no idea if jdt really was using javadoc to gen doc? lsp client actually donot know where that doc from, they communicated via msg. // if you really want to write java via lsp, perhaps should look into jdt, glad if you shared back at then.

Konfekt commented 7 months ago

donot know what you mean 'no longer works'

Running :LspHover over a package name, say java.util.Scanner used to show the documentation of the package, but no longer; instead now it just shows the package name again.

no idea if jdt really was using javadoc to gen doc?

Neither do I, but I wonder what's the difference between our set-ups that yours shows the documentation, say on :LspHover and omni-completion, and mine not? I am using jdtls from https://github.com/eclipse-jdtls/eclipse.jdt.ls

Konfekt commented 7 months ago

Sigh, sorry for the noise. While usually the sources are in a corresponding package suffixed -devel, which was there, here the installation of -src was called for. Javadoc is showing up, maybe this might be of use for Opensuse users at least.

Shane-XB-Qian commented 7 months ago

instead now it just shows the package name again

it showed anyway, it meant msg had get and showed. and as i recalled, its doc not always show for all var/type, but maybe pkg/class name?

so perhaps :

if you really want to write java via lsp, perhaps should look into jdt, glad if you shared back at then.

Shane-XB-Qian commented 7 months ago

Sigh, sorry for the noise. While usually the sources are in a corresponding package suffixed -devel, which was there, here the installation of -src was called for. Javadoc is showing up, maybe this might be of use for Opensuse users at least.

no idea there 'options' where to be, i guess you are actually indiviually using javadoc to gen doc, or you mean you did not install jdk with src?

Konfekt commented 7 months ago

no idea there 'options' where to be, i guess you are actually indiviually using javadoc to gen doc, or you mean you did not install jdk with src?

Yes, the sources were missing. Everything indicated it, but I erroneously excluded it by having the jdk devel package installed.

Konfekt commented 7 months ago

and as i recalled, its doc not always show for all var/type, but maybe pkg/class name?

Yes, at least for packages and classes and methods it now shows up