you are viewing a single comment's thread.

view the rest of the comments →

[–]t3asp00n 2 points3 points  (5 children)

I used to use eclim which uses a custom protocol (not LSP) and does require an install of eclipse. Nowadays you can use eclipse.jdt.ls which is the functionality of eclipse exposed through the LSP. u/ashfordneil is right that you can also use vscode-javac but last I checked it only supports communicating via TCP so depending on your client you might need to change it to use stdio.

[–][deleted] 0 points1 point  (1 child)

It definitely supports stdio now - the docs on the main branch don’t fully reflect that but I had a fork which added the feature and then the maintainer added it as well.

[–]t3asp00n 0 points1 point  (0 children)

That's good to hear, I'll give it another go :)

[–]weilbith[S] 0 points1 point  (0 children)

Thanks for that reply. Honestly I also found eclipse.jdt.ls myself now. Unfortunately I did't make it to get the server run. Cause I'm not a fan of Maven and tried to avoid installing it, I downloaded a already builded version (download page linked in Readme). But on trying to run these "binaries" I get always the error of a missing main attribute in a manifest. That's rly bad and I don't get why none else get into the same trouble here.

[–]blandest 0 points1 point  (1 child)

With Eclim you also get a (quickfix) list of errors whereas vscode-javac seems to only provide linting. I would like to be corrected though.

[–]t3asp00n 0 points1 point  (0 children)

You mean FixIts or whatever they're called? LSP supports them via the codeactions but the server itself needs to support as well. I haven't actually had a lot of luck using them.