Jigsaw EA feedback for elasticsearch
Robert Muir
rcmuir at gmail.com
Fri Sep 11 21:21:50 UTC 2015
I can workaround this issue by changing the code to not call
setAccessible (and doing class.forName).
I don't know why the existing code does it that way... just another
code change, but I think we are fine!
On Fri, Sep 11, 2015 at 4:58 PM, Robert Muir <rcmuir at gmail.com> wrote:
> On Fri, Sep 11, 2015 at 6:09 AM, Alan Bateman <Alan.Bateman at oracle.com> wrote:
>>
>> I'm not sure that I understand the issue here but just to say that the
>> com.sun.management API is a documented/supported API and it exported by
>> module jdk.management:
>>
>> $ java -listmods:jdk.management
>>
>> jdk.management at 9.0
>> requires public java.management
>> requires mandated java.base
>> exports com.sun.management
>> conceals com.sun.management.internal
>> provides sun.management.spi.PlatformMBeanProvider with
>> com.sun.management.internal.PlatformMBeanProviderImpl
>>
>
> Here is code that fails:
>
> import java.lang.reflect.*;
> import java.lang.management.*;
>
> public class test {
> public static void main(String args[]) throws Exception {
> OperatingSystemMXBean osMxBean =
> ManagementFactory.getOperatingSystemMXBean();
> Method getTotalPhysicalMemorySize =
> osMxBean.getClass().getMethod("getTotalPhysicalMemorySize");
> getTotalPhysicalMemorySize.setAccessible(true);
> System.out.println(getTotalPhysicalMemorySize.invoke(osMxBean));
> }
> }
>
> Exception in thread "main"
> java.lang.reflect.InaccessibleObjectException: Unable to make member
> of class com.sun.management.internal.OperatingSystemImpl accessible:
> module jdk.management does not export com.sun.management.internal to
> <unnamed module @5f375618>
> at sun.reflect.Reflection.throwInaccessibleObjectException(java.base at 9.0/Reflection.java:462)
> at java.lang.reflect.AccessibleObject.checkCanSetAccessible(java.base at 9.0/AccessibleObject.java:194)
> at java.lang.reflect.AccessibleObject.setAccessible(java.base at 9.0/AccessibleObject.java:157)
> at test.main(test.java:8)
More information about the jigsaw-dev
mailing list