Hi, Please find below a patch for:
8173607: JMX RMI connector should be in its own module https://bugs.openjdk.java.net/browse/JDK-8173607 webrev: http://cr.openjdk.java.net/~dfuchs/webrev_8173607/webrev.05 This patch makes it possible to remove the requires transitive java.rmi from the java.management module. For convenience here is the HTML module-level API documentation produced by javadoc for the new java.management.rmi module: http://cr.openjdk.java.net/~dfuchs/webrev_8173607/webrev.05/java.management.rmi-summary.html The patch has some temporary hacks (mainly ConnectorBootstrap.java) that we will be able to revert when JDK-8173608 Separate JDK management agent from java.management module is pushed. The changes were mainly mechanical except for: ConnectorBootstrap.java: see above JMXConnectorFactory.java/JMXConnectorServerFactory.java: ServiceLoader is now used to load the default RMI Connector provider as a service. There should however be no observable behavior change to existing application. ProxyRef.java, Unmarshal.java: are moved to a new com.sun.jmx.remote.internal.rmi package in the new module. ClientNotifForwarder.java: is modified to no longer depend on java.rmi.UnmarshalException - NotSerializableException is used instead RMIConnector.java: fetchNotif is updated to throw NotSerializableException instead of UnmarshalException The PRef serialization bytes are updated to accomodate the new ProxyRef package name. Some further cleanup of java.base and java.rmi module-info.java should become possible once JDK-8173608 is in (as well as moving RMIExporter to java.management.rmi - which is not possible yet). Further cleanup of @modules in tests might become possible as well. Note: JCK tests for api/javax_management and api/java_lang/management are passing with this change. best regards, -- daniel