-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Extend ReflectiveClassBuildItem to support queryAllPublicConstructors
, queryAllDeclaredConstructors
, queryAllPublicMethods
, queryAllDeclaredMethods
#41999
Labels
Milestone
Comments
zakkak
added a commit
to zakkak/quarkus
that referenced
this issue
Jul 22, 2024
Note that for the time being we only extend it to support queryAllDeclaredConstructors and queryAllMethods since we don't have an option to register only public methods. Closes quarkusio#41999
zakkak
added a commit
to zakkak/quarkus
that referenced
this issue
Jul 23, 2024
queryOnly registrations enables us to register only the metadata without the actual code, essentially reducing the native executable size. For instance, if some code invokes getDeclaredMethods on a class to see if a specific method is available we don't actually need all the methods bundled in the native executable, so we could use queryAllMethods instead of methods (which will also pull in the code of all methods). Note that for the time being we only extend it to support queryAllDeclaredConstructors and queryAllMethods since we don't have an option to register only public methods. Closes quarkusio#41999
holly-cummins
pushed a commit
to holly-cummins/quarkus
that referenced
this issue
Jul 31, 2024
queryOnly registrations enables us to register only the metadata without the actual code, essentially reducing the native executable size. For instance, if some code invokes getDeclaredMethods on a class to see if a specific method is available we don't actually need all the methods bundled in the native executable, so we could use queryAllMethods instead of methods (which will also pull in the code of all methods). Note that for the time being we only extend it to support queryAllDeclaredConstructors and queryAllMethods since we don't have an option to register only public methods. Closes quarkusio#41999
danielsoro
pushed a commit
to danielsoro/quarkus
that referenced
this issue
Sep 20, 2024
queryOnly registrations enables us to register only the metadata without the actual code, essentially reducing the native executable size. For instance, if some code invokes getDeclaredMethods on a class to see if a specific method is available we don't actually need all the methods bundled in the native executable, so we could use queryAllMethods instead of methods (which will also pull in the code of all methods). Note that for the time being we only extend it to support queryAllDeclaredConstructors and queryAllMethods since we don't have an option to register only public methods. Closes quarkusio#41999
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description
As of Mandrel / GraalVM 22.3 (See oracle/graal#3637) we can register methods and constructors of classes for lookup purposes without having to pull in the code as well.
Implementation ideas
It would be nice to extend
ReflectiveClassBuildItem
to support this kind of configuration as well.The text was updated successfully, but these errors were encountered: