jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java
changeset 30355 e37c7eba132f
parent 28775 d786aae24263
child 32034 05676cfd40b5
--- a/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java	Wed Apr 15 13:27:39 2015 +0200
+++ b/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java	Fri Apr 17 09:40:02 2015 +0200
@@ -582,7 +582,7 @@
         final Class<?> cls = mxbeanInterface;
         ClassLoader loader =
             AccessController.doPrivileged(
-                    (PrivilegedAction<ClassLoader>) () -> cls.getClassLoader());
+                (PrivilegedAction<ClassLoader>) () -> cls.getClassLoader());
         if (!sun.misc.VM.isSystemDomainLoader(loader)) {
             throw new IllegalArgumentException(mxbeanName +
                 " is not a platform MXBean");
@@ -883,7 +883,7 @@
                      all.add(new DefaultPlatformMBeanProvider());
                      return all;
                 }, null, new FilePermission("<<ALL FILES>>", "read"),
-                         new RuntimePermission("sun.management.spi.PlatformMBeanProvider"));
+                         new RuntimePermission("sun.management.spi.PlatformMBeanProvider.subclass"));
 
             // load all platform components into a map
             componentMap = providers.stream()
@@ -970,4 +970,11 @@
             return singleton;
         }
     }
+
+    static {
+        AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
+            System.loadLibrary("management");
+            return null;
+        });
+    }
 }