8033366: Add configure option to allow RMIConnector IIOP transport be selected compiled in or not
Alan.Bateman at oracle.com
Thu Feb 6 12:06:28 UTC 2014
One of things that we are hoping to do in JDK 9 is to drop support for
the IIOP transport from RMI connector in the JMX Remote API . The
motive is modules and the first step on this journey was to downgrade
the support to optional from required (something that we did in JDK 8 as
part of the Compact Profiles and Prepare for Modules efforts).
We're not yet at the point yet where we can change the API docs and
remove the implementation but we are the point where we need to build
without the IIOP transport. Aside from our modularity efforts, it is
useful to have it removed early in JDK 9 as this maximizes the time that
anyone using it has to move another transport.
This is the first time that I've added a configure option to the build
so I may need help getting this right. The patch that I'm currently
using is here:
This adds the configure option --enable-rmiconnector-iiop to opt-in for
including of the RMIConnector IIOP transport in the build. If the option
is not specified (ie: the default) then the IIOP transport is left out.
The only part that might need explanation is that SetRMICompilation
generates the IIOP tie and stub classes if RUN_IIOP is set to anything.
This is the reason why RUN_IIOP isn't just specified as
As regards the tests then we changed the JMX tests in JDK 8 so that they
gracefully handle the case where the RMIConnector only supports the
default transport. I did have to update one langtools test that directly
references a generate stub classes. There isn't an replacement for this
because there aren't any remaining individual classes excluded from
The profiles content file keeps its reference to the _RMI* classes for
now as this is needed for cases where someone does build with the IIOP
transport. This will be re-visited later in JDK 9 of course.
More information about the build-dev