eclipse-jdtls / eclipse.jdt.ls

Java language server
1.7k stars 384 forks source link

How can I add bazel build tool support? #1673

Open dbushenko opened 3 years ago

dbushenko commented 3 years ago

Hello,

Our team is trying to add bazel build tool support. I understand mostly how it should be done: via separate plugin, extension points, etc.

The only thing which prevents me to do this is a little bit of hardcode in original eclipse.jd.ls. For example I cannot re-import updated project because ProjectsManager.updateProject() just does not support other build tools or extensions. There are some other places too which are a bit difficult to extend.

Working on the eclipse.jdt.ls old issues history and commits history I have found out that there is an interface IBuildSupport which probably was originated exactly for this case: to allow extending eclipse.jdt.ls with other build tools. I continued work on this feature and now would like to propose a couple of updates which indeed allowed me to run bazel at last.

How can I propose you my updates?

fbricon commented 3 years ago

Bazel integration is provided by the Salesforce team: https://github.com/salesforce/bazel-ls-eclipse/tree/master/com.salesforce.b2eclipse.jdt.ls

dbushenko commented 3 years ago

Bazel integration is provided by the Salesforce team: https://github.com/salesforce/bazel-ls-eclipse/tree/master/com.salesforce.b2eclipse.jdt.ls

Hello Fred, Thanks for your reply! I'm from team which ports the eclipse support (which heavily depends on the UI) into the headless eclipse.jdt.ls so that other text editors may use it. Unfortunately, there is no such support yet, maybe we will be able to manage this.

fbricon commented 3 years ago

If you need to propose API changes to the IBuild interface and so on, please open a PR, so we can discuss your proposal

dbushenko commented 3 years ago

@fbricon hey, please have a look here: https://github.com/eclipse/eclipse.jdt.ls/pull/1674

BTW, sorry I did not understand your first comment about https://github.com/salesforce/bazel-ls-eclipse/tree/master/com.salesforce.b2eclipse.jdt.ls. I am the one who works on it now :-)

rgrunber commented 3 years ago

Are there any additional contributions needed here, or can this be closed ?