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

Replace the deprecated RecorderContext#classProxy in groovy and joor extensions #5056

Closed
lburgazzoli opened this issue Jul 5, 2023 · 1 comment · Fixed by #5066 or #5077
Closed

Comments

@lburgazzoli
Copy link
Contributor

lburgazzoli commented Jul 5, 2023

Description

Wile working on #5053, we noticed that even if it is state that RecorderContext#classProxy can be replaced with i.e. Class#forName, that does not seems to work and it is not clear if this is because of a Quarkus issue or a mis-usage.

Refs:

@lburgazzoli
Copy link
Contributor Author

lburgazzoli commented Jul 5, 2023

@essobedo I think the issue here is that the compiled class does not exists at build time as it is juts part of a GeneratedClassBuildItem and I may not be knowvn by the classloader and so maybe

  • the configureLanguage should depends on the GeneratedClassBuildItem
  • the CLass.forName could be done in the runtime part, at that point I think the class should exists.

@essobedo essobedo self-assigned this Jul 6, 2023
@jamesnetherton jamesnetherton added this to the 3.0.0 milestone Jul 7, 2023
essobedo added a commit that referenced this issue Jul 10, 2023
## Motivation

The first proposal to replace `RecorderContext#classProxy` works but is suboptimal, let's use the approach recommended by Quarkus Team members.

## Modifications:

* Removes the common recorder with a method allowing to delay the loading of the generated classes
* Loads the class in the recorder methods
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment