1 /* 2 * Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 /** 27 * Defines the foundational APIs of the Java SE Platform. 28 * 29 * @moduleGraph 30 * @since 9 31 */ 32 module java.base { 33 34 exports java.io; 35 exports java.lang; 36 exports java.lang.annotation; 37 exports java.lang.invoke; 38 exports java.lang.module; 39 exports java.lang.ref; 40 exports java.lang.reflect; 41 exports java.math; 42 exports java.net; 43 exports java.net.spi; 44 exports java.nio; 45 exports java.nio.channels; 46 exports java.nio.channels.spi; 47 exports java.nio.charset; 48 exports java.nio.charset.spi; 49 exports java.nio.file; 50 exports java.nio.file.attribute; 51 exports java.nio.file.spi; 52 exports java.security; 53 exports java.security.acl; 54 exports java.security.cert; 55 exports java.security.interfaces; 56 exports java.security.spec; 57 exports java.text; 58 exports java.text.spi; 59 exports java.time; 60 exports java.time.chrono; 61 exports java.time.format; 62 exports java.time.temporal; 63 exports java.time.zone; 64 exports java.util; 65 exports java.util.concurrent; 66 exports java.util.concurrent.atomic; 67 exports java.util.concurrent.locks; 68 exports java.util.function; 69 exports java.util.jar; 70 exports java.util.regex; 71 exports java.util.spi; 72 exports java.util.stream; 73 exports java.util.zip; 74 exports javax.crypto; 75 exports javax.crypto.interfaces; 76 exports javax.crypto.spec; 77 exports javax.net; 78 exports javax.net.ssl; 79 exports javax.security.auth; 80 exports javax.security.auth.callback; 81 exports javax.security.auth.login; 82 exports javax.security.auth.spi; 83 exports javax.security.auth.x500; 84 exports javax.security.cert; 85 86 87 // the service types defined by the APIs in this module 88 89 uses java.lang.System.LoggerFinder; 90 uses java.net.ContentHandlerFactory; 91 uses java.net.spi.URLStreamHandlerProvider; 92 uses java.nio.channels.spi.AsynchronousChannelProvider; 93 uses java.nio.channels.spi.SelectorProvider; 94 uses java.nio.charset.spi.CharsetProvider; 95 uses java.nio.file.spi.FileSystemProvider; 96 uses java.nio.file.spi.FileTypeDetector; 97 uses java.security.Provider; 98 uses java.text.spi.BreakIteratorProvider; 99 uses java.text.spi.CollatorProvider; 100 uses java.text.spi.DateFormatProvider; 101 uses java.text.spi.DateFormatSymbolsProvider; 102 uses java.text.spi.DecimalFormatSymbolsProvider; 103 uses java.text.spi.NumberFormatProvider; 104 uses java.time.chrono.AbstractChronology; 105 uses java.time.chrono.Chronology; 106 uses java.time.zone.ZoneRulesProvider; 107 uses java.util.spi.CalendarDataProvider; 108 uses java.util.spi.CalendarNameProvider; 109 uses java.util.spi.CurrencyNameProvider; 110 uses java.util.spi.LocaleNameProvider; 111 uses java.util.spi.ResourceBundleControlProvider; 112 uses java.util.spi.ResourceBundleProvider; 113 uses java.util.spi.TimeZoneNameProvider; 114 uses java.util.spi.ToolProvider; 115 uses javax.security.auth.spi.LoginModule; 116 117 118 // additional qualified exports may be inserted at build time 119 // see make/gensrc/GenModuleInfo.gmk 120 121 exports com.sun.security.ntlm to 122 java.security.sasl; 123 exports jdk.internal.jimage to 124 jdk.jlink; 125 exports jdk.internal.jimage.decompressor to 126 jdk.jlink; 127 exports jdk.internal.loader to 128 java.instrument, 129 java.logging; 130 exports jdk.internal.jmod to 131 jdk.compiler, // reflective dependency 132 jdk.jlink; 133 exports jdk.internal.logger to 134 java.logging; 135 exports jdk.internal.org.objectweb.asm to 136 jdk.jartool, 137 jdk.jlink, 138 jdk.scripting.nashorn, 139 jdk.internal.vm.ci; 140 exports jdk.internal.org.objectweb.asm.tree to 141 jdk.jlink; 142 exports jdk.internal.org.objectweb.asm.util to 143 jdk.scripting.nashorn; 144 exports jdk.internal.org.objectweb.asm.commons to 145 jdk.scripting.nashorn; 146 exports jdk.internal.org.objectweb.asm.signature to 147 jdk.scripting.nashorn; 148 exports jdk.internal.math to 149 java.desktop; 150 exports jdk.internal.module to 151 java.instrument, 152 java.management.rmi, 153 jdk.jartool, 154 jdk.jlink; 155 exports jdk.internal.misc to 156 java.desktop, 157 java.logging, 158 java.management, 159 java.naming, 160 java.rmi, 161 java.security.jgss, 162 java.sql, 163 java.xml, 164 jdk.attach, 165 jdk.charsets, 166 jdk.compiler, // reflective dependency 167 jdk.incubator.httpclient, 168 jdk.jdeps, 169 jdk.jlink, 170 jdk.jshell, 171 jdk.net, 172 jdk.scripting.nashorn, 173 jdk.scripting.nashorn.shell, 174 jdk.unsupported, 175 jdk.internal.vm.ci; 176 exports jdk.internal.perf to 177 java.desktop, 178 java.management, 179 jdk.management.agent, 180 jdk.internal.jvmstat; 181 exports jdk.internal.ref to 182 java.desktop, 183 jdk.unsupported; 184 exports jdk.internal.reflect to 185 java.logging, 186 java.sql, 187 java.sql.rowset, 188 jdk.dynalink, 189 jdk.scripting.nashorn, 190 jdk.unsupported; 191 exports jdk.internal.vm.annotation to 192 jdk.unsupported, 193 jdk.internal.vm.ci, 194 jdk.incubator.httpclient; 195 exports jdk.internal.util.jar to 196 jdk.jartool, 197 jdk.jdeps, 198 jdk.jlink; 199 exports jdk.internal.vm to 200 jdk.management.agent, 201 jdk.internal.jvmstat; 202 exports sun.net to 203 jdk.incubator.httpclient; 204 exports sun.net.ext to 205 jdk.net; 206 exports sun.net.dns to 207 java.security.jgss, 208 jdk.naming.dns; 209 exports sun.net.util to 210 java.desktop, 211 jdk.jconsole; 212 exports sun.net.www to 213 java.desktop, 214 jdk.incubator.httpclient, 215 jdk.jartool; 216 exports sun.net.www.protocol.http to 217 java.security.jgss; 218 exports sun.nio.ch to 219 java.management, 220 jdk.crypto.cryptoki, 221 jdk.sctp, 222 jdk.unsupported; 223 exports sun.nio.cs to 224 java.desktop, 225 jdk.charsets; 226 exports sun.nio.fs to 227 jdk.unsupported; 228 exports sun.reflect.annotation to 229 jdk.compiler; 230 exports sun.reflect.generics.reflectiveObjects to 231 java.desktop; 232 exports sun.reflect.misc to 233 java.desktop, 234 java.datatransfer, 235 java.management, 236 java.management.rmi, 237 java.rmi, 238 java.sql.rowset, 239 java.xml; 240 exports sun.security.action to 241 java.desktop, 242 java.security.jgss; 243 exports sun.security.internal.interfaces to 244 jdk.crypto.cryptoki; 245 exports sun.security.internal.spec to 246 jdk.crypto.cryptoki; 247 exports sun.security.jca to 248 java.smartcardio, 249 jdk.crypto.ec, 250 jdk.crypto.cryptoki, 251 jdk.naming.dns; 252 exports sun.security.pkcs to 253 jdk.crypto.ec, 254 jdk.jartool; 255 exports sun.security.provider to 256 java.rmi, 257 java.security.jgss, 258 jdk.crypto.cryptoki, 259 jdk.policytool, 260 jdk.security.auth; 261 exports sun.security.provider.certpath to 262 java.naming; 263 exports sun.security.rsa to 264 jdk.crypto.cryptoki; 265 exports sun.security.ssl to 266 java.security.jgss; 267 exports sun.security.timestamp to 268 jdk.jartool; 269 exports sun.security.tools to 270 jdk.jartool; 271 exports sun.security.util to 272 java.desktop, 273 java.naming, 274 java.rmi, 275 java.security.jgss, 276 java.security.sasl, 277 java.smartcardio, 278 java.xml.crypto, 279 jdk.crypto.ec, 280 jdk.crypto.cryptoki, 281 jdk.jartool, 282 jdk.policytool, 283 jdk.security.auth, 284 jdk.security.jgss; 285 exports sun.security.x509 to 286 jdk.crypto.ec, 287 jdk.crypto.cryptoki, 288 jdk.jartool, 289 jdk.security.auth; 290 exports sun.security.validator to 291 jdk.jartool; 292 exports sun.text.resources to 293 jdk.localedata; 294 exports sun.util.cldr to 295 jdk.jlink; 296 exports sun.util.locale.provider to 297 java.desktop, 298 jdk.jlink, 299 jdk.localedata; 300 exports sun.util.logging to 301 java.desktop, 302 java.logging, 303 java.prefs; 304 exports sun.util.resources to 305 jdk.localedata; 306 307 // JDK-internal service types 308 uses jdk.internal.logger.DefaultLoggerFinder; 309 uses sun.security.ssl.ClientKeyExchangeService; 310 uses sun.text.spi.JavaTimeDateTimePatternProvider; 311 uses sun.util.spi.CalendarProvider; 312 uses sun.util.locale.provider.LocaleDataMetaInfo; 313 uses sun.util.resources.LocaleData.CommonResourceBundleProvider; 314 uses sun.util.resources.LocaleData.SupplementaryResourceBundleProvider; 315 316 317 // Built-in service providers that are located via ServiceLoader 318 319 provides java.nio.file.spi.FileSystemProvider with 320 jdk.internal.jrtfs.JrtFileSystemProvider; 321 }