This is what happens when needed refactoring is attempted damned years late!
If Oracle had deprecated all the half-baked Sun kludges in Java several years ago, then removed them or had a hard coded security policy to deny access to non-JRE code, this could have been done with far less fuss now! Because this was not done, some products are a pain to upgrade, because developers could still use the kludges, so short sighted management were able to put off upgrades...!
I think Oracle _finally_ accepted that JME was crippled junk (Google saw this for Android), so needed some way modularise and shrink the JRE for more restricted environments.