With certain changes to the JVMParameters class that require the calling of the Config class on the client (attached) JVM side (namely the querying of whether the JVM is secure), it becomes apparent that deploy.dll from the JRE containing the new Java Plug-In is needed in basically all situations. PluginMain needs to load the deploy shared object using specialized code because the normal loading mechanism will load it from the JRE it is running on top of, which causes a mismatch between the Java code and native code for these classes.
Stack trace of failure when currently running on top of 5.0 family:
at com.sun.deploy.config.WinConfig.canDownloadJRE(Native Method)
at com.sun.deploy.config.WinConfig.canAutoDownloadJRE(Unknown Source)
at com.sun.deploy.config.Config.refreshProps(Unknown Source)
at com.sun.deploy.config.Config.initialize(Unknown Source)
at com.sun.deploy.config.Config.<clinit>(Unknown Source)
at sun.plugin2.jvm.JVMParameters.isSecure(Unknown Source)
at sun.plugin2.main.client.PluginMain.mainLoop(Unknown Source)
at sun.plugin2.main.client.PluginMain.run(Unknown Source)
at sun.plugin2.main.client.PluginMain.main(Unknown Source)
Note that this is an inadvertent regression caused by the fix for 6607516, but the underlying problem could have been uncovered at any time.