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

Enhance initialization of gradle projects #3357

Merged
merged 1 commit into from
Jan 15, 2025

Conversation

snjeza
Copy link
Contributor

@snjeza snjeza commented Jan 6, 2025

Copy link
Contributor

@rgrunber rgrunber left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looked back to #1874 , as I wanted to be sure we're not undoing the reason we moved it here to begin with. I guess the condition holds, We're starting the bundles even more before language server initialization. It's in a job that gets scheduled when the JDT-LS bundle is started.

Should this be reproducible before this PR ? If I insert a breakpoint right at JavaCore.initializeAfterLoad(monitor); in the initializeAfterLoad job and one at InitHandler.handleInitializationOptions(..) and attempt to make sure the initializeAfterLoad call runs first, I'm not seeing a dead lock after proceeding with the thread that runs in the InitHandler. Am I missing something ?

@snjeza
Copy link
Contributor Author

snjeza commented Jan 13, 2025

test this please

@rgrunber
Copy link
Contributor

Should this be reproducible before this PR ? If I insert a breakpoint right at JavaCore.initializeAfterLoad(monitor); in the initializeAfterLoad job and one at InitHandler.handleInitializationOptions(..) and attempt to make sure the initializeAfterLoad call runs first, I'm not seeing a dead lock after proceeding with the thread that runs in the InitHandler. Am I missing something ?

@snjeza let me know about steps to reproduce if there exist some consistent way

@snjeza
Copy link
Contributor Author

snjeza commented Jan 14, 2025

let me know about steps to reproduce if there exist some consistent way

There isn't a consistent way. You can try the following:

VS Code will freeze sometimes.
It is more straightforward to reproduce if you create a vsix.

@snjeza
Copy link
Contributor Author

snjeza commented Jan 14, 2025

test this please

1 similar comment
@snjeza
Copy link
Contributor Author

snjeza commented Jan 15, 2025

test this please

@snjeza
Copy link
Contributor Author

snjeza commented Jan 15, 2025

The related PR - #3361

Copy link
Contributor

@rgrunber rgrunber left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, I think this fixes the issue! I would just add a message in the body of the commit :

- Move Maven/Gradle bundle activation from initialization to JDT-LS startup
- Synchronize annotation processing configuration only if necessary

- Move Maven/Gradle bundle activation from initialization to JDT-LS startup
- Synchronize annotation processing configuration only if necessary
@snjeza
Copy link
Contributor Author

snjeza commented Jan 15, 2025

Overall, I think this fixes the issue! I would just add a message in the body of the commit :

I have added it.

@snjeza snjeza merged commit 78d72ee into eclipse-jdtls:master Jan 15, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants