title: Is there a way to redefine a Java9 module, by giving export/open privileges only to a particular package in the "destination" module?
body: <p><code>instrumentaton.redefineModule()</code> gives provision to export/open a particular JPMS Module's package(s) to other module(s). But is there a way to just do the same, but ONLY to a particular package in the destination module (the module to which the package is exported to).</p>
  
  <p><strong>Right now</strong></p>
  
  <p>extraExports/extraOpens is a Map with 
  key: "Package to be exported in the Source Module " 
  value: Set of Modules to export/open to</p>
  
  <p><strong>What i would have needed</strong> is a Map with</p>
  
  <p>key: "Package to be exported in the Source Module" 
  value: Map with Key: "Package in the Destination Module" value: Modules to export/open to</p>
  
  <p>I know that there is no such thing right now, but the underlying question: <strong>Is there a provision to do package level redefinition for Module.</strong></p>
  
  <p><em>A bit more background</em>: I am writing a java agent, which is not Modular yet. So those gets loaded in to the unnamed-module dumpyard (since i cant use modulepath because of project restrictions ). I want other modules to export/open packages to "just" my agent classes and not to the whole unnamed-module. Writing a custom class loader to load my Agent class and giving the privileges to only the new class loaders unnamed-module, is probably one solution, but then before i Attempt that, want to check if there is another solution. </p>