-
Notifications
You must be signed in to change notification settings - Fork 5
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
Gradle 8: Use dynamic proxy for JavaInstallationMetadata
#240
Gradle 8: Use dynamic proxy for JavaInstallationMetadata
#240
Conversation
…r/proxy-for-gradle-installation-metadata
Generate changelog in
|
I'm not sure I understand, why do we have to reimplement this? Didn't we do this in palantir/gradle-baseline#2605 ? |
sorry, accidentally closed |
We implement |
👍 |
…r/proxy-for-gradle-installation-metadata
Released 0.34.0 |
Before this PR
When used on Gradle 8, running
compileJava
or related java tasks leads to an error:This is because Gradle have added a method to
JavaInstallationMetadata
with no default, probably not expecting people to implement it :(.After this PR
==COMMIT_MSG==
Support Gradle 8, avoid errors of the form "ImmutableGradleJdksJavaInstallationMetadata does not define or inherit an implementation of the resolved method 'abstract boolean isCurrentJvm()'"
==COMMIT_MSG==
Do this by making a dynamic proxy, which should work provided nothing actually calls these extra methods.
Related fix in baseline: palantir/gradle-baseline#2605
Possible downsides?
Wonderful hackery.