modules.xml
author mgronlun
Tue, 01 Mar 2016 23:41:57 +0100
changeset 36289 0a4264edc184
parent 36054 b14d8a6ad77e
child 36293 2b49697ad422
permissions -rw-r--r--
8143228: Update module exports for Java Flight Recorder Reviewed-by: alanb, egahlin

<?xml version="1.0" encoding="us-ascii"?>

<!--

   Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
   DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.

   This code is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License version 2 only, as
   published by the Free Software Foundation.  Oracle designates this
   particular file as subject to the "Classpath" exception as provided
   by Oracle in the LICENSE file that accompanied this code.

   This code is distributed in the hope that it will be useful, but WITHOUT
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   version 2 for more details (a copy is included in the LICENSE file that
   accompanied this code).

   You should have received a copy of the GNU General Public License version
   2 along with this work; if not, write to the Free Software Foundation,
   Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.

   Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
   or visit www.oracle.com if you need additional information or have any
   questions.

  -->

<!--

   This document defines the modular structure of the JDK as described
   in JEP 200: The Modular JDK (http://openjdk.java.net/jeps/200).

   Changes to this file must be reviewed by a Project Jigsaw Committer
   (http://openjdk.java.net/census#jigsaw).

  -->

<modules>
  <module>
    <name>java.activation</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.datatransfer</depend>
    <depend>java.desktop</depend>
    <depend>java.logging</depend>
    <export>
      <name>javax.activation</name>
    </export>
  </module>
  <module>
    <name>java.annotations.common</name>
    <depend>java.base</depend>
    <export>
      <name>javax.annotation</name>
    </export>
  </module>
  <module>
    <name>java.base</name>
    <export>
      <name>java.io</name>
    </export>
    <export>
      <name>java.lang</name>
    </export>
    <export>
      <name>java.lang.annotation</name>
    </export>
    <export>
      <name>java.lang.invoke</name>
    </export>
    <export>
      <name>java.lang.ref</name>
    </export>
    <export>
      <name>java.lang.reflect</name>
    </export>
    <export>
      <name>java.math</name>
    </export>
    <export>
      <name>java.net</name>
    </export>
    <export>
      <name>java.nio</name>
    </export>
    <export>
      <name>java.nio.channels</name>
    </export>
    <export>
      <name>java.nio.channels.spi</name>
    </export>
    <export>
      <name>java.nio.charset</name>
    </export>
    <export>
      <name>java.nio.charset.spi</name>
    </export>
    <export>
      <name>java.nio.file</name>
    </export>
    <export>
      <name>java.nio.file.attribute</name>
    </export>
    <export>
      <name>java.nio.file.spi</name>
    </export>
    <export>
      <name>java.security</name>
    </export>
    <export>
      <name>java.security.acl</name>
    </export>
    <export>
      <name>java.security.cert</name>
    </export>
    <export>
      <name>java.security.interfaces</name>
    </export>
    <export>
      <name>java.security.spec</name>
    </export>
    <export>
      <name>java.text</name>
    </export>
    <export>
      <name>java.text.spi</name>
    </export>
    <export>
      <name>java.time</name>
    </export>
    <export>
      <name>java.time.chrono</name>
    </export>
    <export>
      <name>java.time.format</name>
    </export>
    <export>
      <name>java.time.temporal</name>
    </export>
    <export>
      <name>java.time.zone</name>
    </export>
    <export>
      <name>java.util</name>
    </export>
    <export>
      <name>java.util.concurrent</name>
    </export>
    <export>
      <name>java.util.concurrent.atomic</name>
    </export>
    <export>
      <name>java.util.concurrent.locks</name>
    </export>
    <export>
      <name>java.util.function</name>
    </export>
    <export>
      <name>java.util.jar</name>
    </export>
    <export>
      <name>java.util.regex</name>
    </export>
    <export>
      <name>java.util.spi</name>
    </export>
    <export>
      <name>java.util.stream</name>
    </export>
    <export>
      <name>java.util.zip</name>
    </export>
    <export>
      <name>javax.crypto</name>
    </export>
    <export>
      <name>javax.crypto.interfaces</name>
    </export>
    <export>
      <name>javax.crypto.spec</name>
    </export>
    <export>
      <name>javax.net</name>
    </export>
    <export>
      <name>javax.net.ssl</name>
    </export>
    <export>
      <name>javax.security.auth</name>
    </export>
    <export>
      <name>javax.security.auth.callback</name>
    </export>
    <export>
      <name>javax.security.auth.login</name>
    </export>
    <export>
      <name>javax.security.auth.spi</name>
    </export>
    <export>
      <name>javax.security.auth.x500</name>
    </export>
    <export>
      <name>javax.security.cert</name>
    </export>
    <export>
      <name>jdk</name>
    </export>
    <export>
      <name>jdk.net</name>
    </export>
    <export>
      <name>com.sun.security.ntlm</name>
      <to>java.security.sasl</to>
    </export>
    <export>
      <name>jdk.internal.jimage</name>
      <to>jdk.dev</to>
    </export>
    <export>
      <name>jdk.internal.jimage.decompressor</name>
      <to>jdk.dev</to>
    </export>
    <export>
      <name>jdk.internal.math</name>
      <to>java.desktop</to>
    </export>
    <export>
      <name>jdk.internal.misc</name>
      <to>java.corba</to>
      <to>java.desktop</to>
      <to>java.logging</to>
      <to>java.management</to>
      <to>java.naming</to>
      <to>java.rmi</to>
      <to>java.security.jgss</to>
      <to>java.sql</to>
      <to>java.xml</to>
      <to>jdk.charsets</to>
      <to>jdk.management.resource</to>
      <to>jdk.jfr</to>
      <to>jdk.net</to>
      <to>jdk.scripting.nashorn</to>
      <to>jdk.vm.ci</to>
    </export>
    <export>
      <name>jdk.internal.perf</name>
      <to>java.desktop</to>
      <to>java.management</to>
      <to>jdk.jvmstat</to>
    </export>
    <export>
      <name>jdk.internal.org.xml.sax</name>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>jdk.internal.org.xml.sax.helpers</name>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>jdk.internal.util.xml</name>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>jdk.internal.util.xml.impl</name>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>jdk.internal.org.objectweb.asm</name>
      <to>java.instrument</to>
      <to>jdk.jfr</to>
      <to>jdk.scripting.nashorn</to>
      <to>jdk.vm.ci</to>
    </export>
    <export>
      <name>jdk.internal.org.objectweb.asm.commons</name>
      <to>java.instrument</to>
      <to>jdk.jfr</to>
      <to>jdk.scripting.nashorn</to>
    </export>
    <export>
      <name>jdk.internal.org.objectweb.asm.signature</name>
      <to>jdk.scripting.nashorn</to>
    </export>
    <export>
      <name>jdk.internal.org.objectweb.asm.tree</name>
      <to>java.instrument</to>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>jdk.internal.org.objectweb.asm.util</name>
      <to>java.instrument</to>
      <to>jdk.jfr</to>
      <to>jdk.scripting.nashorn</to>
    </export>
    <export>
      <name>jdk.internal.ref</name>
      <to>java.desktop</to>
    </export>
    <export>
      <name>jdk.internal</name>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>sun.misc</name>
      <to>java.corba</to>
      <to>java.desktop</to>
      <to>java.instrument</to>
      <to>java.logging</to>
      <to>java.management</to>
      <to>java.naming</to>
      <to>java.prefs</to>
      <to>java.rmi</to>
      <to>java.security.jgss</to>
      <to>java.security.sasl</to>
      <to>java.xml</to>
      <to>jdk.charsets</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.deploy.osx</to>
      <to>jdk.httpserver</to>
      <to>jdk.jartool</to>
      <to>jdk.jconsole</to>
      <to>jdk.jvmstat</to>
      <to>jdk.management.resource</to>
      <to>jdk.pack200</to>
      <to>jdk.scripting.nashorn</to>
      <to>jdk.security.auth</to>
      <to>jdk.security.jgss</to>
      <to>jdk.snmp</to>
      <to>jdk.vm.ci</to>
      <to>jdk.zipfs</to>
      <to>java.instrument</to>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>sun.net</name>
      <to>java.httpclient</to>
    </export>
    <export>
      <name>sun.net.dns</name>
      <to>java.security.jgss</to>
      <to>jdk.naming.dns</to>
    </export>
    <export>
      <name>sun.net.sdp</name>
      <to>jdk.net</to>
    </export>
    <export>
      <name>sun.net.spi.nameservice</name>
      <to>jdk.naming.dns</to>
    </export>
    <export>
      <name>sun.net.util</name>
      <to>java.desktop</to>
      <to>jdk.jconsole</to>
      <to>jdk.naming.dns</to>
    </export>
    <export>
      <name>sun.net.www</name>
      <to>java.desktop</to>
      <to>jdk.compiler</to>
      <to>jdk.jartool</to>
    </export>
    <export>
      <name>sun.net.www.protocol.http</name>
      <to>java.security.jgss</to>
    </export>
    <export>
      <name>sun.nio.ch</name>
      <to>java.management</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.crypto.ucrypto</to>
      <to>jdk.management.resource</to>
      <to>jdk.net</to>
      <to>jdk.sctp</to>
    </export>
    <export>
      <name>sun.nio.cs</name>
      <to>java.desktop</to>
      <to>jdk.charsets</to>
    </export>
    <export>
      <name>sun.reflect</name>
      <to>java.corba</to>
      <to>java.instrument</to>
      <to>java.logging</to>
      <to>java.sql</to>
      <to>java.sql.rowset</to>
      <to>jdk.dynalink</to>
      <to>jdk.scripting.nashorn</to>
      <to>jdk.vm.cds</to>
    </export>
    <export>
      <name>sun.reflect.annotation</name>
      <to>jdk.compiler</to>
    </export>
    <export>
      <name>sun.reflect.generics.reflectiveObjects</name>
      <to>java.desktop</to>
    </export>
    <export>
      <name>sun.reflect.misc</name>
      <to>java.corba</to>
      <to>java.datatransfer</to>
      <to>java.desktop</to>
      <to>java.management</to>
      <to>java.rmi</to>
      <to>java.sql.rowset</to>
      <to>java.xml</to>
    </export>
    <export>
      <name>sun.security.action</name>
      <to>java.desktop</to>
      <to>java.security.jgss</to>
      <to>jdk.crypto.ec</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.crypto.ucrypto</to>
    </export>
    <export>
      <name>sun.security.internal.interfaces</name>
      <to>jdk.crypto.pkcs11</to>
    </export>
    <export>
      <name>sun.security.internal.spec</name>
      <to>jdk.crypto.mscapi</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.crypto.ucrypto</to>
    </export>
    <export>
      <name>sun.security.jca</name>
      <to>java.smartcardio</to>
      <to>java.xml.crypto</to>
      <to>jdk.crypto.ec</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.crypto.ucrypto</to>
      <to>jdk.naming.dns</to>
    </export>
    <export>
      <name>sun.security.pkcs</name>
      <to>jdk.crypto.ec</to>
      <to>jdk.deploy.osx</to>
      <to>jdk.jartool</to>
    </export>
    <export>
      <name>sun.security.provider</name>
      <to>java.rmi</to>
      <to>java.security.jgss</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.jartool</to>
      <to>jdk.policytool</to>
      <to>jdk.security.auth</to>
    </export>
    <export>
      <name>sun.security.provider.certpath</name>
      <to>java.naming</to>
    </export>
    <export>
      <name>sun.security.rsa</name>
      <to>jdk.crypto.mscapi</to>
      <to>jdk.crypto.pkcs11</to>
    </export>
    <export>
      <name>sun.security.ssl</name>
      <to>java.security.jgss</to>
    </export>
    <export>
      <name>sun.security.tools</name>
      <to>jdk.jartool</to>
    </export>
    <export>
      <name>sun.security.util</name>
      <to>java.desktop</to>
      <to>java.naming</to>
      <to>java.rmi</to>
      <to>java.security.jgss</to>
      <to>java.security.sasl</to>
      <to>java.smartcardio</to>
      <to>jdk.crypto.ec</to>
      <to>jdk.crypto.mscapi</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.crypto.ucrypto</to>
      <to>jdk.deploy.osx</to>
      <to>jdk.jartool</to>
      <to>jdk.policytool</to>
      <to>jdk.security.auth</to>
      <to>jdk.security.jgss</to>
    </export>
    <export>
      <name>sun.security.x509</name>
      <to>java.naming</to>
      <to>jdk.crypto.ec</to>
      <to>jdk.crypto.pkcs11</to>
      <to>jdk.deploy.osx</to>
      <to>jdk.jartool</to>
      <to>jdk.security.auth</to>
    </export>
    <export>
      <name>sun.text</name>
      <to>java.desktop</to>
    </export>
    <export>
      <name>sun.util</name>
      <to>java.desktop</to>
    </export>
    <export>
      <name>sun.util.locale.provider</name>
      <to>java.desktop</to>
      <to>jdk.localedata</to>
    </export>
    <export>
      <name>jdk.internal.logger</name>
      <to>java.logging</to>
    </export>
    <export>
      <name>sun.util.logging</name>
      <to>java.desktop</to>
      <to>java.logging</to>
      <to>java.management</to>
      <to>java.prefs</to>
      <to>java.httpclient</to>
    </export>
    <export>
      <name>sun.util.resources</name>
      <to>jdk.localedata</to>
    </export>
  </module>
  <module>
    <name>java.compact1</name>
    <depend re-exports="true">java.base</depend>
    <depend re-exports="true">java.logging</depend>
    <depend re-exports="true">java.scripting</depend>
  </module>
  <module>
    <name>java.compact2</name>
    <depend re-exports="true">java.compact1</depend>
    <depend re-exports="true">java.rmi</depend>
    <depend re-exports="true">java.sql</depend>
    <depend re-exports="true">java.xml</depend>
  </module>
  <module>
    <name>java.compact3</name>
    <depend re-exports="true">java.compact2</depend>
    <depend re-exports="true">java.compiler</depend>
    <depend re-exports="true">java.instrument</depend>
    <depend re-exports="true">java.httpclient</depend>
    <depend re-exports="true">java.management</depend>
    <depend re-exports="true">java.naming</depend>
    <depend re-exports="true">java.prefs</depend>
    <depend re-exports="true">java.security.jgss</depend>
    <depend re-exports="true">java.security.sasl</depend>
    <depend re-exports="true">java.sql.rowset</depend>
    <depend re-exports="true">java.xml.crypto</depend>
  </module>
  <module>
    <name>java.compiler</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <export>
      <name>javax.annotation.processing</name>
    </export>
    <export>
      <name>javax.lang.model</name>
    </export>
    <export>
      <name>javax.lang.model.element</name>
    </export>
    <export>
      <name>javax.lang.model.type</name>
    </export>
    <export>
      <name>javax.lang.model.util</name>
    </export>
    <export>
      <name>javax.tools</name>
    </export>
  </module>
  <module>
    <name>java.corba</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.desktop</depend>
    <depend>java.logging</depend>
    <depend>java.naming</depend>
    <depend re-exports="true">java.rmi</depend>
    <depend>java.transaction</depend>
    <export>
      <name>javax.activity</name>
    </export>
    <export>
      <name>javax.rmi</name>
    </export>
    <export>
      <name>javax.rmi.CORBA</name>
    </export>
    <export>
      <name>org.omg.CORBA</name>
    </export>
    <export>
      <name>org.omg.CORBA.DynAnyPackage</name>
    </export>
    <export>
      <name>org.omg.CORBA.ORBPackage</name>
    </export>
    <export>
      <name>org.omg.CORBA.TypeCodePackage</name>
    </export>
    <export>
      <name>org.omg.CORBA.portable</name>
    </export>
    <export>
      <name>org.omg.CORBA_2_3</name>
    </export>
    <export>
      <name>org.omg.CORBA_2_3.portable</name>
    </export>
    <export>
      <name>org.omg.CosNaming</name>
    </export>
    <export>
      <name>org.omg.CosNaming.NamingContextExtPackage</name>
    </export>
    <export>
      <name>org.omg.CosNaming.NamingContextPackage</name>
    </export>
    <export>
      <name>org.omg.Dynamic</name>
    </export>
    <export>
      <name>org.omg.DynamicAny</name>
    </export>
    <export>
      <name>org.omg.DynamicAny.DynAnyFactoryPackage</name>
    </export>
    <export>
      <name>org.omg.DynamicAny.DynAnyPackage</name>
    </export>
    <export>
      <name>org.omg.IOP</name>
    </export>
    <export>
      <name>org.omg.IOP.CodecFactoryPackage</name>
    </export>
    <export>
      <name>org.omg.IOP.CodecPackage</name>
    </export>
    <export>
      <name>org.omg.Messaging</name>
    </export>
    <export>
      <name>org.omg.PortableInterceptor</name>
    </export>
    <export>
      <name>org.omg.PortableInterceptor.ORBInitInfoPackage</name>
    </export>
    <export>
      <name>org.omg.PortableServer</name>
    </export>
    <export>
      <name>org.omg.PortableServer.CurrentPackage</name>
    </export>
    <export>
      <name>org.omg.PortableServer.POAManagerPackage</name>
    </export>
    <export>
      <name>org.omg.PortableServer.POAPackage</name>
    </export>
    <export>
      <name>org.omg.PortableServer.ServantLocatorPackage</name>
    </export>
    <export>
      <name>org.omg.PortableServer.portable</name>
    </export>
    <export>
      <name>org.omg.SendingContext</name>
    </export>
    <export>
      <name>org.omg.stub.java.rmi</name>
    </export>
    <export>
      <name>com.sun.corba.se.impl.util</name>
      <to>jdk.rmic</to>
    </export>
  </module>
  <module>
    <name>java.datatransfer</name>
    <depend>java.base</depend>
    <export>
      <name>java.awt.datatransfer</name>
    </export>
    <export>
      <name>sun.datatransfer</name>
      <to>java.desktop</to>
    </export>
  </module>
  <module>
    <name>java.desktop</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <depend>java.prefs</depend>
    <depend re-exports="true">java.xml</depend>
    <depend re-exports="true">java.datatransfer</depend>
    <export>
      <name>java.applet</name>
    </export>
    <export>
      <name>java.awt</name>
    </export>
    <export>
      <name>java.awt.color</name>
    </export>
    <export>
      <name>java.awt.dnd</name>
    </export>
    <export>
      <name>java.awt.event</name>
    </export>
    <export>
      <name>java.awt.font</name>
    </export>
    <export>
      <name>java.awt.geom</name>
    </export>
    <export>
      <name>java.awt.im</name>
    </export>
    <export>
      <name>java.awt.im.spi</name>
    </export>
    <export>
      <name>java.awt.image</name>
    </export>
    <export>
      <name>java.awt.image.renderable</name>
    </export>
    <export>
      <name>java.awt.print</name>
    </export>
    <export>
      <name>java.beans</name>
    </export>
    <export>
      <name>java.beans.beancontext</name>
    </export>
    <export>
      <name>javax.accessibility</name>
    </export>
    <export>
      <name>javax.imageio</name>
    </export>
    <export>
      <name>javax.imageio.event</name>
    </export>
    <export>
      <name>javax.imageio.metadata</name>
    </export>
    <export>
      <name>javax.imageio.plugins.bmp</name>
    </export>
    <export>
      <name>javax.imageio.plugins.jpeg</name>
    </export>
    <export>
      <name>javax.imageio.spi</name>
    </export>
    <export>
      <name>javax.imageio.stream</name>
    </export>
    <export>
      <name>javax.print</name>
    </export>
    <export>
      <name>javax.print.attribute</name>
    </export>
    <export>
      <name>javax.print.attribute.standard</name>
    </export>
    <export>
      <name>javax.print.event</name>
    </export>
    <export>
      <name>javax.sound.midi</name>
    </export>
    <export>
      <name>javax.sound.midi.spi</name>
    </export>
    <export>
      <name>javax.sound.sampled</name>
    </export>
    <export>
      <name>javax.sound.sampled.spi</name>
    </export>
    <export>
      <name>javax.swing</name>
    </export>
    <export>
      <name>javax.swing.border</name>
    </export>
    <export>
      <name>javax.swing.colorchooser</name>
    </export>
    <export>
      <name>javax.swing.event</name>
    </export>
    <export>
      <name>javax.swing.filechooser</name>
    </export>
    <export>
      <name>javax.swing.plaf</name>
    </export>
    <export>
      <name>javax.swing.plaf.basic</name>
    </export>
    <export>
      <name>javax.swing.plaf.metal</name>
    </export>
    <export>
      <name>javax.swing.plaf.multi</name>
    </export>
    <export>
      <name>javax.swing.plaf.nimbus</name>
    </export>
    <export>
      <name>javax.swing.plaf.synth</name>
    </export>
    <export>
      <name>javax.swing.table</name>
    </export>
    <export>
      <name>javax.swing.text</name>
    </export>
    <export>
      <name>javax.swing.text.html</name>
    </export>
    <export>
      <name>javax.swing.text.html.parser</name>
    </export>
    <export>
      <name>javax.swing.text.rtf</name>
    </export>
    <export>
      <name>javax.swing.tree</name>
    </export>
    <export>
      <name>javax.swing.undo</name>
    </export>
    <export>
      <name>sun.awt</name>
      <to>jdk.accessibility</to>
    </export>
  </module>
  <module>
    <name>jdk.jshell</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.compiler</depend>
    <depend>jdk.compiler</depend>
    <depend>java.desktop</depend>
    <depend>java.prefs</depend>
    <depend>jdk.jdi</depend>
    <depend>jdk.internal.le</depend>
    <export>
      <name>jdk.jshell</name>
    </export>
  </module>
  <module>
    <name>java.httpclient</name>
    <depend>java.base</depend>
    <export>
      <name>java.net.http</name>
    </export>
  </module>
  <module>
    <name>java.instrument</name>
    <depend>java.base</depend>
    <export>
      <name>java.lang.instrument</name>
    </export>
    <export>
      <name>jdk.internal.instrumentation</name>
      <to>jdk.jfr</to>
      <to>jdk.management.resource</to>
    </export>
  </module>
  <module>
    <name>java.logging</name>
    <depend>java.base</depend>
    <export>
      <name>java.util.logging</name>
    </export>
  </module>
  <module>
    <name>java.management</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <depend>java.naming</depend>
    <depend re-exports="true">java.rmi</depend>
    <export>
      <name>java.lang.management</name>
    </export>
    <export>
      <name>javax.management</name>
    </export>
    <export>
      <name>javax.management.loading</name>
    </export>
    <export>
      <name>javax.management.modelmbean</name>
    </export>
    <export>
      <name>javax.management.monitor</name>
    </export>
    <export>
      <name>javax.management.openmbean</name>
    </export>
    <export>
      <name>javax.management.relation</name>
    </export>
    <export>
      <name>javax.management.remote</name>
    </export>
    <export>
      <name>javax.management.remote.rmi</name>
    </export>
    <export>
      <name>javax.management.timer</name>
    </export>
    <export>
      <name>sun.management</name>
      <to>jdk.jconsole</to>
      <to>jdk.management</to>
    </export>
    <export>
      <name>sun.management.spi</name>
      <to>jdk.management</to>
      <to>jdk.management.cmm</to>
      <to>jdk.management.jfr</to>
    </export>
  </module>
  <module>
    <name>java.naming</name>
    <depend>java.base</depend>
    <depend>java.security.sasl</depend>
    <export>
      <name>javax.naming</name>
    </export>
    <export>
      <name>javax.naming.directory</name>
    </export>
    <export>
      <name>javax.naming.event</name>
    </export>
    <export>
      <name>javax.naming.ldap</name>
    </export>
    <export>
      <name>javax.naming.spi</name>
    </export>
    <export>
      <name>com.sun.jndi.toolkit.ctx</name>
      <to>jdk.naming.dns</to>
    </export>
    <export>
      <name>com.sun.jndi.toolkit.url</name>
      <to>java.corba</to>
      <to>jdk.naming.dns</to>
      <to>jdk.naming.rmi</to>
    </export>
  </module>
  <module>
    <name>java.prefs</name>
    <depend>java.base</depend>
    <depend>java.xml</depend>
    <export>
      <name>java.util.prefs</name>
    </export>
  </module>
  <module>
    <name>java.rmi</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <export>
      <name>java.rmi</name>
    </export>
    <export>
      <name>java.rmi.activation</name>
    </export>
    <export>
      <name>java.rmi.dgc</name>
    </export>
    <export>
      <name>java.rmi.registry</name>
    </export>
    <export>
      <name>java.rmi.server</name>
    </export>
    <export>
      <name>javax.rmi.ssl</name>
    </export>
    <export>
      <name>sun.rmi.registry</name>
      <to>java.management</to>
    </export>
    <export>
      <name>sun.rmi.server</name>
      <to>java.management</to>
      <to>jdk.jconsole</to>
    </export>
    <export>
      <name>sun.rmi.transport</name>
      <to>java.management</to>
      <to>jdk.jconsole</to>
    </export>
  </module>
  <module>
    <name>java.scripting</name>
    <depend>java.base</depend>
    <export>
      <name>javax.script</name>
    </export>
  </module>
  <module>
    <name>java.se</name>
    <depend re-exports="true">java.activation</depend>
    <depend re-exports="true">java.compact3</depend>
    <depend re-exports="true">java.corba</depend>
    <depend re-exports="true">java.datatransfer</depend>
    <depend re-exports="true">java.desktop</depend>
    <depend re-exports="true">java.transaction</depend>
    <depend re-exports="true">java.xml.bind</depend>
    <depend re-exports="true">java.xml.ws</depend>
  </module>
  <module>
    <name>java.security.jgss</name>
    <depend>java.base</depend>
    <depend>java.naming</depend>
    <export>
      <name>javax.security.auth.kerberos</name>
    </export>
    <export>
      <name>org.ietf.jgss</name>
    </export>
    <export>
      <name>sun.security.jgss.krb5</name>
      <to>jdk.security.auth</to>
    </export>
    <export>
      <name>sun.security.krb5</name>
      <to>jdk.security.auth</to>
    </export>
    <export>
      <name>sun.security.krb5.internal.ktab</name>
      <to>jdk.security.auth</to>
    </export>
    <export>
      <name>sun.security.jgss</name>
      <to>jdk.security.jgss</to>
    </export>
    <export>
      <name>sun.security.krb5.internal</name>
      <to>jdk.security.jgss</to>
    </export>
  </module>
  <module>
    <name>java.security.sasl</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <export>
      <name>javax.security.sasl</name>
    </export>
    <export>
      <name>com.sun.security.sasl.util</name>
      <to>jdk.security.jgss</to>
    </export>
  </module>
  <module>
    <name>java.smartcardio</name>
    <depend>java.base</depend>
    <export>
      <name>javax.smartcardio</name>
    </export>
  </module>
  <module>
    <name>java.sql</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.logging</depend>
    <depend re-exports="true">java.xml</depend>
    <export>
      <name>java.sql</name>
    </export>
    <export>
      <name>javax.sql</name>
    </export>
    <export>
      <name>javax.transaction.xa</name>
    </export>
  </module>
  <module>
    <name>java.sql.rowset</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.logging</depend>
    <depend re-exports="true">java.naming</depend>
    <depend re-exports="true">java.sql</depend>
    <depend>java.xml</depend>
    <export>
      <name>javax.sql.rowset</name>
    </export>
    <export>
      <name>javax.sql.rowset.serial</name>
    </export>
    <export>
      <name>javax.sql.rowset.spi</name>
    </export>
  </module>
  <module>
    <name>java.transaction</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.rmi</depend>
    <export>
      <name>javax.transaction</name>
    </export>
  </module>
  <module>
    <name>java.xml</name>
    <depend>java.base</depend>
    <export>
      <name>javax.xml</name>
    </export>
    <export>
      <name>javax.xml.catalog</name>
    </export>
    <export>
      <name>javax.xml.datatype</name>
    </export>
    <export>
      <name>javax.xml.namespace</name>
    </export>
    <export>
      <name>javax.xml.parsers</name>
    </export>
    <export>
      <name>javax.xml.stream</name>
    </export>
    <export>
      <name>javax.xml.stream.events</name>
    </export>
    <export>
      <name>javax.xml.stream.util</name>
    </export>
    <export>
      <name>javax.xml.transform</name>
    </export>
    <export>
      <name>javax.xml.transform.dom</name>
    </export>
    <export>
      <name>javax.xml.transform.sax</name>
    </export>
    <export>
      <name>javax.xml.transform.stax</name>
    </export>
    <export>
      <name>javax.xml.transform.stream</name>
    </export>
    <export>
      <name>javax.xml.validation</name>
    </export>
    <export>
      <name>javax.xml.xpath</name>
    </export>
    <export>
      <name>org.w3c.dom</name>
    </export>
    <export>
      <name>org.w3c.dom.bootstrap</name>
    </export>
    <export>
      <name>org.w3c.dom.events</name>
    </export>
    <export>
      <name>org.w3c.dom.ls</name>
    </export>
    <export>
      <name>org.w3c.dom.ranges</name>
    </export>
    <export>
      <name>org.w3c.dom.traversal</name>
    </export>
    <export>
      <name>org.w3c.dom.views</name>
    </export>
    <export>
      <name>org.xml.sax</name>
    </export>
    <export>
      <name>org.xml.sax.ext</name>
    </export>
    <export>
      <name>org.xml.sax.helpers</name>
    </export>
     <export>
       <name>com.sun.org.apache.xerces.internal.dom</name>
       <to>java.xml.ws</to>
     </export>
     <export>
       <name>com.sun.org.apache.xerces.internal.jaxp</name>
       <to>java.xml.ws</to>
     </export>
     <export>
       <name>com.sun.org.apache.xerces.internal.util</name>
       <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.org.apache.xml.internal.dtm</name>
      <to>java.xml.crypto</to>
    </export>
    <export>
      <name>com.sun.org.apache.xml.internal.resolver</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.org.apache.xml.internal.resolver.tools</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.org.apache.xml.internal.utils</name>
      <to>java.xml.crypto</to>
    </export>
    <export>
      <name>com.sun.org.apache.xpath.internal</name>
      <to>java.xml.crypto</to>
    </export>
    <export>
      <name>com.sun.org.apache.xpath.internal.compiler</name>
      <to>java.xml.crypto</to>
    </export>
    <export>
      <name>com.sun.org.apache.xpath.internal.functions</name>
      <to>java.xml.crypto</to>
    </export>
    <export>
      <name>com.sun.org.apache.xpath.internal.objects</name>
      <to>java.xml.crypto</to>
    </export>
    <export>
      <name>com.sun.org.apache.xpath.internal.res</name>
      <to>java.xml.crypto</to>
    </export>
  </module>
  <module>
    <name>java.xml.bind</name>
    <depend re-exports="true">java.activation</depend>
    <depend>java.base</depend>
    <depend>java.compiler</depend>
    <depend>java.datatransfer</depend>
    <depend>java.desktop</depend>
    <depend>java.logging</depend>
    <depend re-exports="true">java.xml</depend>
    <export>
      <name>javax.xml.bind</name>
    </export>
    <export>
      <name>javax.xml.bind.annotation</name>
    </export>
    <export>
      <name>javax.xml.bind.annotation.adapters</name>
    </export>
    <export>
      <name>javax.xml.bind.attachment</name>
    </export>
    <export>
      <name>javax.xml.bind.helpers</name>
    </export>
    <export>
      <name>javax.xml.bind.util</name>
    </export>
    <export>
      <name>com.sun.istack.internal</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.istack.internal.localization</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.istack.internal.logging</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.annotation</name>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.api</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.api.impl</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.marshaller</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.unmarshaller</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.util</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.model.annotation</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.model.core</name>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.model.impl</name>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.model.nav</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.model.runtime</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.model.util</name>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.runtime</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.runtime.unmarshaller</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.schemagen</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.schemagen.episode</name>
      <to>jdk.xml.bind</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.schemagen.xmlschema</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.bind.v2.util</name>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.fastinfoset.stax</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.fastinfoset.vocab</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.org.jvnet.fastinfoset</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.org.jvnet.mimepull</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.org.jvnet.staxex</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.org.jvnet.staxex.util</name>
      <to>java.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.txw2</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.txw2.annotation</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.txw2.output</name>
      <to>java.xml.ws</to>
      <to>jdk.xml.bind</to>
      <to>jdk.xml.ws</to>
    </export>
  </module>
  <module>
    <name>java.xml.crypto</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <depend re-exports="true">java.xml</depend>
    <export>
      <name>javax.xml.crypto</name>
    </export>
    <export>
      <name>javax.xml.crypto.dom</name>
    </export>
    <export>
      <name>javax.xml.crypto.dsig</name>
    </export>
    <export>
      <name>javax.xml.crypto.dsig.dom</name>
    </export>
    <export>
      <name>javax.xml.crypto.dsig.keyinfo</name>
    </export>
    <export>
      <name>javax.xml.crypto.dsig.spec</name>
    </export>
  </module>
  <module>
    <name>java.xml.ws</name>
    <depend>java.annotations.common</depend>
    <depend>java.base</depend>
    <depend>java.datatransfer</depend>
    <depend>java.desktop</depend>
    <depend>java.logging</depend>
    <depend>java.management</depend>
    <depend>java.rmi</depend>
    <depend re-exports="true">java.activation</depend>
    <depend re-exports="true">java.xml</depend>
    <depend re-exports="true">java.xml.bind</depend>
    <depend>jdk.httpserver</depend>
    <export>
      <name>javax.jws</name>
    </export>
    <export>
      <name>javax.jws.soap</name>
    </export>
    <export>
      <name>javax.xml.soap</name>
    </export>
    <export>
      <name>javax.xml.ws</name>
    </export>
    <export>
      <name>javax.xml.ws.handler</name>
    </export>
    <export>
      <name>javax.xml.ws.handler.soap</name>
    </export>
    <export>
      <name>javax.xml.ws.http</name>
    </export>
    <export>
      <name>javax.xml.ws.soap</name>
    </export>
    <export>
      <name>javax.xml.ws.spi</name>
    </export>
    <export>
      <name>javax.xml.ws.spi.http</name>
    </export>
    <export>
      <name>javax.xml.ws.wsaddressing</name>
    </export>
    <export>
      <name>com.oracle.webservices.internal.api.databinding</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.addressing</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.addressing.v200408</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.addressing</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.databinding</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.model</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.server</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.streaming</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.wsdl.parser</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.api.wsdl.writer</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.binding</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.db</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.model</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.policy.sourcemodel.wspolicy</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.spi.db</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.streaming</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.util</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.util.exception</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.util.xml</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.wsdl.parser</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.ws.wsdl.writer</name>
      <to>jdk.xml.ws</to>
    </export>
  </module>
  <module>
    <name>jdk.attach</name>
    <depend>java.base</depend>
    <depend>jdk.jvmstat</depend>
    <export>
      <name>com.sun.tools.attach</name>
    </export>
    <export>
      <name>com.sun.tools.attach.spi</name>
    </export>
    <export>
      <name>sun.tools.attach</name>
      <to>jdk.jcmd</to>
    </export>
  </module>
  <module>
    <name>jdk.charsets</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.compiler</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.compiler</depend>
    <export>
      <name>com.sun.source.doctree</name>
    </export>
    <export>
      <name>com.sun.source.tree</name>
    </export>
    <export>
      <name>com.sun.source.util</name>
    </export>
    <export>
      <name>com.sun.tools.javac</name>
    </export>
    <export>
      <name>com.sun.tools.doclint</name>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.api</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.code</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.comp</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.file</name>
      <to>jdk.javadoc</to>
      <to>jdk.jdeps</to>
    </export>
    <export>
      <name>com.sun.tools.javac.jvm</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.main</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.nio</name>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.parser</name>
      <to>jdk.jshell</to>
    </export>
    <export>
      <name>com.sun.tools.javac.platform</name>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.sym</name>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.tree</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
    </export>
    <export>
      <name>com.sun.tools.javac.util</name>
      <to>jdk.jshell</to>
      <to>jdk.javadoc</to>
      <to>jdk.jdeps</to>
    </export>
    <export>
      <name>com.sun.tools.javac.model</name>
      <to>jdk.javadoc</to>
    </export>
  </module>
  <module>
    <name>jdk.crypto.ec</name>
    <depend>java.base</depend>
    <export>
      <name>sun.security.ec</name>
      <to>jdk.crypto.pkcs11</to>
    </export>
  </module>
  <module>
    <name>jdk.crypto.mscapi</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.crypto.pkcs11</name>
    <depend>java.base</depend>
    <depend>jdk.crypto.ec</depend>
  </module>
  <module>
    <name>jdk.crypto.ucrypto</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.deploy.osx</name>
    <depend>java.base</depend>
    <depend>java.desktop</depend>
  </module>
  <module>
    <name>jdk.dev</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.dynalink</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <export>
      <name>jdk.dynalink</name>
    </export>
    <export>
      <name>jdk.dynalink.beans</name>
    </export>
    <export>
      <name>jdk.dynalink.linker</name>
    </export>
    <export>
      <name>jdk.dynalink.linker.support</name>
    </export>
    <export>
      <name>jdk.dynalink.support</name>
    </export>
  </module>
  <module>
    <name>jdk.hotspot.agent</name>
    <depend>java.base</depend>
    <depend>java.datatransfer</depend>
    <depend>java.desktop</depend>
    <depend>java.rmi</depend>
    <depend>java.scripting</depend>
    <depend>jdk.jdi</depend>
  </module>
  <module>
    <name>jdk.httpserver</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <export>
      <name>com.sun.net.httpserver</name>
    </export>
    <export>
      <name>com.sun.net.httpserver.spi</name>
    </export>
  </module>
  <module>
    <name>jdk.internal.le</name>
    <depend>java.base</depend>
    <export>
      <name>jdk.internal.jline</name>
      <to>jdk.jshell</to>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.internal.jline.console</name>
      <to>jdk.jshell</to>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.internal.jline.console.completer</name>
      <to>jdk.jshell</to>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.internal.jline.console.history</name>
      <to>jdk.jshell</to>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.internal.jline.internal</name>
      <to>jdk.jshell</to>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
  </module>
  <module>
    <name>jdk.internal.opt</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.jartool</name>
    <depend>java.base</depend>
    <export>
      <name>com.sun.jarsigner</name>
    </export>
    <export>
      <name>jdk.security.jarsigner</name>
    </export>
  </module>
  <module>
    <name>jdk.javadoc</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.compiler</depend>
    <depend>java.xml</depend>
    <depend re-exports="true">jdk.compiler</depend>
    <export>
      <name>com.sun.javadoc</name>
    </export>
    <export>
      <name>com.sun.tools.doclets</name>
    </export>
    <export>
      <name>com.sun.tools.javadoc</name>
    </export>
    <export>
      <name>jdk.javadoc.doclet</name>  
    </export>
    <export>
      <name>jdk.javadoc.doclet.taglet</name>  
    </export>
  </module>
  <module>
    <name>jdk.jcmd</name>
    <depend>java.base</depend>
    <depend>jdk.attach</depend>
    <depend>jdk.jvmstat</depend>
  </module>
  <module>
    <name>jdk.jconsole</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.desktop</depend>
    <depend>java.logging</depend>
    <depend re-exports="true">java.management</depend>
    <depend>java.rmi</depend>
    <depend>jdk.attach</depend>
    <depend>jdk.jvmstat</depend>
    <depend>jdk.management</depend>
    <export>
      <name>com.sun.tools.jconsole</name>
    </export>
  </module>
  <module>
    <name>jdk.jdeps</name>
    <depend>java.base</depend>
    <depend>java.compiler</depend>
    <depend>java.xml</depend>
    <depend>jdk.compiler</depend>
  </module>
  <module>
    <name>jdk.jdi</name>
    <depend>java.base</depend>
    <depend>jdk.attach</depend>
    <export>
      <name>com.sun.jdi</name>
    </export>
    <export>
      <name>com.sun.jdi.connect</name>
    </export>
    <export>
      <name>com.sun.jdi.connect.spi</name>
    </export>
    <export>
      <name>com.sun.jdi.event</name>
    </export>
    <export>
      <name>com.sun.jdi.request</name>
    </export>
    <export>
      <name>com.sun.tools.jdi</name>
      <to>jdk.hotspot.agent</to>
    </export>
  </module>
  <module>
    <name>jdk.jdwp.agent</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.jvmstat</name>
    <depend>java.base</depend>
    <export>
      <name>sun.jvmstat.monitor</name>
      <to>jdk.attach</to>
      <to>jdk.jcmd</to>
      <to>jdk.jconsole</to>
      <to>jdk.jvmstat.rmi</to>
    </export>
    <export>
      <name>sun.jvmstat.monitor.event</name>
      <to>jdk.jcmd</to>
      <to>jdk.jvmstat.rmi</to>
    </export>
    <export>
      <name>sun.jvmstat.perfdata.monitor</name>
      <to>jdk.jvmstat.rmi</to>
    </export>
  </module>
  <module>
    <name>jdk.jvmstat.rmi</name>
    <depend>java.base</depend>
    <depend>java.rmi</depend>
    <depend>jdk.jvmstat</depend>
    <export>
      <name>sun.jvmstat.monitor.remote</name>
      <to>java.rmi</to>
    </export>
  </module>
  <module>
    <name>jdk.localedata</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.management</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.management</depend>
    <export>
      <name>com.sun.management</name>
    </export>
  </module>
  <module>
    <name>jdk.naming.dns</name>
    <depend>java.base</depend>
    <depend>java.naming</depend>
  </module>
  <module>
    <name>jdk.naming.rmi</name>
    <depend>java.base</depend>
    <depend>java.naming</depend>
    <depend>java.rmi</depend>
  </module>
  <module>
    <name>jdk.pack200</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.policytool</name>
    <depend>java.base</depend>
    <depend>java.desktop</depend>
    <depend>java.logging</depend>
    <depend>java.management</depend>
    <depend>java.security.jgss</depend>
    <depend>java.sql</depend>
    <depend>jdk.security.jgss</depend>
  </module>
  <module>
    <name>jdk.rmic</name>
    <depend>java.base</depend>
    <depend>java.corba</depend>
    <depend>jdk.compiler</depend>
    <depend>jdk.javadoc</depend>
  </module>
  <module>
    <name>jdk.scripting.nashorn</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <depend>jdk.dynalink</depend>
    <depend re-exports="true">java.scripting</depend>
    <export>
      <name>jdk.nashorn.internal.runtime</name>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.nashorn.internal.objects</name>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.nashorn.tools</name>
      <to>jdk.scripting.nashorn.shell</to>
    </export>
    <export>
      <name>jdk.nashorn.api.scripting</name>
    </export>
    <export>
      <name>jdk.nashorn.api.tree</name>
    </export>
  </module>
  <module>
    <name>jdk.scripting.nashorn.shell</name>
    <depend>java.base</depend>
    <depend>jdk.scripting.nashorn</depend>
    <depend>jdk.internal.le</depend> <!-- jline -->
    <depend>java.desktop</depend> <!-- EditPad -->
    <depend>java.compiler</depend> <!-- java package completion -->
  </module>
  <module>
    <name>jdk.sctp</name>
    <depend>java.base</depend>
    <export>
      <name>com.sun.nio.sctp</name>
    </export>
  </module>
  <module>
    <name>jdk.security.auth</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.naming</depend>
    <depend>java.security.jgss</depend>
    <export>
      <name>com.sun.security.auth</name>
    </export>
    <export>
      <name>com.sun.security.auth.callback</name>
    </export>
    <export>
      <name>com.sun.security.auth.login</name>
    </export>
    <export>
      <name>com.sun.security.auth.module</name>
    </export>
  </module>
  <module>
    <name>jdk.security.jgss</name>
    <depend>java.base</depend>
    <depend>java.logging</depend>
    <depend re-exports="true">java.security.jgss</depend>
    <depend>java.security.sasl</depend>
    <export>
      <name>com.sun.security.jgss</name>
    </export>
  </module>
  <module>
    <name>jdk.vm.ci</name>
    <depend>java.base</depend>
    <export>
      <name>jdk.vm.ci.hotspot</name>
      <to>jdk.jfr</to>
    </export>
    <export>
      <name>jdk.vm.ci.hotspot.events</name>
      <to>jdk.jfr</to>
    </export>
  </module>
  <module>
    <name>jdk.xml.bind</name>
    <depend>java.activation</depend>
    <depend>java.base</depend>
    <depend>java.compiler</depend>
    <depend>java.datatransfer</depend>
    <depend>java.desktop</depend>
    <depend>java.logging</depend>
    <depend>java.xml</depend>
    <depend>java.xml.bind</depend>
    <depend>jdk.compiler</depend>
    <export>
      <name>com.sun.codemodel.internal</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.codemodel.internal.writer</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.istack.internal.tools</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.jxc.ap</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.jxc.model.nav</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.xjc</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.xjc.api</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.xjc.api.util</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.xjc.reader</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.xjc.reader.internalizer</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.tools.internal.xjc.util</name>
      <to>jdk.xml.ws</to>
    </export>
    <export>
      <name>com.sun.xml.internal.xsom.parser</name>
      <to>jdk.xml.ws</to>
    </export>
  </module>
  <module>
    <name>jdk.xml.dom</name>
    <depend>java.base</depend>
    <depend re-exports="true">java.xml</depend>
    <export>
      <name>org.w3c.dom.css</name>
    </export>
    <export>
      <name>org.w3c.dom.html</name>
    </export>
    <export>
      <name>org.w3c.dom.stylesheets</name>
    </export>
    <export>
      <name>org.w3c.dom.xpath</name>
    </export>
  </module>
  <module>
    <name>jdk.xml.ws</name>
    <depend>java.base</depend>
    <depend>java.compiler</depend>
    <depend>java.logging</depend>
    <depend>java.rmi</depend>
    <depend>java.xml</depend>
    <depend>java.xml.bind</depend>
    <depend>java.xml.ws</depend>
    <depend>jdk.xml.bind</depend>
  </module>
  <module>
    <name>jdk.zipfs</name>
    <depend>java.base</depend>
  </module>
  <module>
    <name>jdk.accessibility</name>
    <depend>java.base</depend>
    <depend>java.desktop</depend>
  </module>
</modules>