> On 31 Jan 2025, at 17:33, Code Ranger <coderanger2...@outlook.com> wrote: > > > > On 1/31/25 19:23, Ron Pressler wrote: >> >> >>> On 31 Jan 2025, at 16:49, Code Ranger <coderanger2...@outlook.com> wrote: >>> >>> >>> 1. we don't have access to the boot layer controller and we received a >>> categorical refusal to grant access to it. >>> >> That is incorrect. The API for controlling modules in the boot layer has >> been available since JDK 9, using the very mechanism that has been used for >> precisely this kind of super-powered manipulation for 20 years: >> >> https://docs.oracle.com/en/java/javase/23/docs/api/java.instrument/java/lang/instrument/Instrumentation.html#redefineModule(java.lang.Module,java.util.Set,java.util.Map,java.util.Map,java.util.Set,java.util.Map) >> > Unfortunately, this is correct. > > I am sure, that if it is necessary to use agent and java instrumentation to > make this the simplest configuration work, then it simply means, that > something is wrong here. Maybe two many constrains?
Manipulating a module’s access checks at runtime allows you, for example, to redefine the value of 5 in Java to be 6, and that is precisely the job agents are, and have always been, for. Changing the internal rules by which the runtime operates — and modules’ access are at the core of these rules — is the very definition of low-level instrumentation. Have you encontered a difficulty using this standard approach?