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

implement prototype for using new javac-based JDT parser #1398

Open
martinlippert opened this issue Nov 6, 2024 · 2 comments
Open

implement prototype for using new javac-based JDT parser #1398

martinlippert opened this issue Nov 6, 2024 · 2 comments

Comments

@martinlippert
Copy link
Member

The majority of the information around the incubated version of JDT that allows you to switch between javac and ejc-based parsing of Java source code can be found here: https://github.com/redhat-developer/vscode-java/releases/tag/v1.36.0

The idea here is to build a prototype of the spring boot language server that uses this incubating version of JDT with javac-based parsing enabled. Questions would be:

  • what do we need to change in order to adopt this?
    • parsing source code (bulk)
    • parsing source code (single file)
    • caching the environment (to speed-up lookup when re-parsing a file)
  • what are the performance implications of this? (running sample projects of up to 60k source files)
  • what are the memory implications of this? (running sample projects of up to 60k source files)
@martinlippert
Copy link
Member Author

Made some very early steps here, but didn't got very far: eclipse-jdtls/eclipse-jdt-core-incubator#1077

Since this is probably the first time someone tries to use this outside of a running Eclipse environment, I am not surprised that this doesn't work (yet) out of the box, but probably good feedback for the people working on this.

The core implementation is in https://github.com/eclipse-jdtls/eclipse-jdt-core-incubator, the dom-with-javac branch. I build that locally and then added org.eclipse.jdt.core as well as org.eclipse.jdt.core.javac to the project dependencies, I haven't found a maven repository with this anywhere yet.

@martinlippert
Copy link
Member Author

Here is the branch with my stupid early steps: https://github.com/spring-projects/sts4/tree/dom-with-javac

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant