RFR: 8327218: Add an ability to specify modules which should have native access enabled

ExE Boss duke at openjdk.org
Mon Mar 4 17:57:53 UTC 2024


On Mon, 4 Mar 2024 13:52:13 GMT, Jan Lahoda <jlahoda at openjdk.org> wrote:

> Currently, JDK modules load by the bootstrap and platform ClassLoaders are automatically granted the native access. I am working on an upgrade of JLine inside the `jdk.internal.le` module, and I would like to replace the current native bindings with FFM-based bindings (which are now somewhat provided by JLine). But, for that, native access is needed for the `jdk.internal.le` module. We could possibly move the module to the platform ClassLoader, but it seems it might be better to have more control over which modules have the native access.
> 
> This patch introduces an explicit list of modules that will automatically be granted the native access. Note this patch is not yet intended to change the end behavior - the list of modules granted native access is supposed to be the same as modules in the boot and platform ClassLoaders.

src/java.base/share/classes/java/lang/ModuleLayer.java line 885:

> 883: 
> 884:     /**
> 885:      * Returns the module with the given name in this later only.

Suggestion:

     * Returns the module with the given name in this layer only.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/18106#discussion_r1511542904


More information about the build-dev mailing list