[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[che-dev] Language servers per project
|
Hi folks,
while working with jdt.ls I've come across an issue that has been
bugging me for quite some time: we start an instance of a language
server per root project in Che. I've long felt that this is wrong, and
with multi-root workspaces coming to LSP, it will be even more wrong.
Things like jre, libraries in the local maven repo do NOT exist once per
project. Also, if we can't have references between projects (which is
the state now), why even HAVE multiple projects? Concretely, I get an
opaque url for references in class files from jdt.ls, which I can't
really map to a project, so my code fails when trying to map a class
file url to a project.
I am currently working around that issue by using per project proxies
for a single instance of jdt.ls in the background. I would like to
reverse this burden and make it the default for language servers to be
initialized once per workspace. If a language server cannot run in this
configuration, it is up to that language server launcher to start the
appropriate instances as needed.
I'd like to hear from interested parties on why the decision to use per
project LS was taken and what concrete problems (which language servers)
arose with single LS per workspace. Also, what's the general opinion on
this issue?
thx for your feedback,
/Thomas