Skip to content

Conversation

@mizdebsk
Copy link
Member

@mizdebsk mizdebsk commented Feb 3, 2025

Class loaders are not discarded after use, but kept cached, so that subsequent use of the same class loader can reuse already loaded (and possibly JIT-compiled) classes.

Tool class loaders are separated from combined tool-project class loaders, so that tool class loaders can be reused when the same tool is ran on different projects.

Combined tool-project class loader is not even created unless particular tool is annotated with @ProjectClassScope, which means that the tool needs a class loader that includes project classes.

Class loaders are not discarded after use, but kept cached, so that
subsequent use of the same class loader can reuse already loaded (and
possibly JIT-compiled) classes.

Tool class loaders are separated from combined tool-project class
loaders, so that tool class loaders can be reused when the same tool
is ran on different projects.

Combined tool-project class loader is not even created unless
particular tool is annotated with @ProjectClassScope, which means that
the tool needs a class loader that includes project classes.
@mizdebsk mizdebsk merged commit 4b5f01e into fedora-java:master Feb 3, 2025
1 check passed
@mizdebsk mizdebsk deleted the class-loader-improvements branch February 3, 2025 10:26
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.

1 participant