-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Try to fix eclipse configuration after upgrading to gradle 9.1.0. #15252
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
Conversation
|
This PR does not have an entry in lucene/CHANGES.txt. Consider adding one. If the PR doesn't need a changelog entry, then add the skip-changelog label to it and you will stop receiving this reminder on future updates to the PR. |
| // Collect dependencies from selected configurations | ||
| // and copy them over to a local configuration. | ||
| List<Dependency> subdependencies = new ArrayList<>(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think it's 1:1 the same as before - dependency resolution can end up with different outputs... in theory at least. But it seems to work for me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that was my question, too. You create a clone of the config, but how could they differ. I would say it would resolve the config separately (like a new project with all merged configs, correct?).
It may differ, I am opening the project with Groovy, works!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you can theoretically imagine a situation with two configurations having a transitive dependency in different versions - then it would resolve this differently... I think. I wouldn't worry about it though, it's a hack already.
|
This is a bug in the ecj version that ships with my Eclipse release. The field is definitively initialized in the |
|
There's already a bug open at ECJ and fixed already: eclipse-jdt/eclipse.jdt.core#4416 |
|
We don't see the bug in the Gradle build, because we have ECJ I20250926-1800, which has the fix already. |
|
|
||
| // Add gradle plugin portal to the source repository list and | ||
| // apply any ecj source repository hackery the same way as everywhere. | ||
| project.getRepositories().gradlePluginPortal(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why do we need this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are plugin dependencies (in the build-infra) that wouldn't be resolved from maven central alone and this configuration for Eclipse is set up in the root project (which only has mavenCentral as the source repository).
|
I found another bug with ECJ: eclipse-jdt/eclipse.jdt.core#4449 We can't trust Java 25 compilation with ECJ at the current stage. So all errors or non-errors should be carefully inspected. |

Fixes #15250, hopefully.