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 module java.base { 30 31 exports java.io; 32 exports java.lang; 33 exports java.lang.annotation; 34 exports java.lang.invoke; 35 exports java.lang.module; 36 exports java.lang.ref; 37 exports java.lang.reflect; 38 exports java.math; 39 exports java.net; 40 exports java.net.spi; 41 exports java.nio; 42 exports java.nio.channels; 43 exports java.nio.channels.spi; 44 exports java.nio.charset; 45 exports java.nio.charset.spi; 46 exports java.nio.file; 47 exports java.nio.file.attribute; 48 exports java.nio.file.spi; 49 exports java.security; 50 exports java.security.acl; 51 exports java.security.cert; 52 exports java.security.interfaces; 53 exports java.security.spec; 54 exports java.text; 55 exports java.text.spi; 56 exports java.time; 57 exports java.time.chrono; 58 exports java.time.format; 59 exports java.time.temporal; 60 exports java.time.zone; 61 exports java.util; 62 exports java.util.concurrent; 63 exports java.util.concurrent.atomic; 64 exports java.util.concurrent.locks; 65 exports java.util.function; 66 exports java.util.jar; 67 exports java.util.regex; 68 exports java.util.spi; 69 exports java.util.stream; 70 exports java.util.zip; 71 exports javax.crypto; 72 exports javax.crypto.interfaces; 73 exports javax.crypto.spec; 74 exports javax.net; 75 exports javax.net.ssl; 76 exports javax.security.auth; 77 exports javax.security.auth.callback; 78 exports javax.security.auth.login; 79 exports javax.security.auth.spi; 80 exports javax.security.auth.x500; 81 exports javax.security.cert; 82 83 84 // the service types defined by the APIs in this module 85 86 uses java.lang.System.LoggerFinder; 87 uses java.net.ContentHandlerFactory; 88 uses java.net.spi.URLStreamHandlerProvider; 89 uses java.nio.channels.spi.AsynchronousChannelProvider; 90 uses java.nio.channels.spi.SelectorProvider; 91 uses java.nio.charset.spi.CharsetProvider; 92 uses java.nio.file.spi.FileSystemProvider; 93 uses java.nio.file.spi.FileTypeDetector; 94 uses java.security.Provider; 95 uses java.text.spi.BreakIteratorProvider; 96 uses java.text.spi.CollatorProvider; 97 uses java.text.spi.DateFormatProvider; 98 uses java.text.spi.DateFormatSymbolsProvider; 99 uses java.text.spi.DecimalFormatSymbolsProvider; 100 uses java.text.spi.NumberFormatProvider; 101 uses java.time.chrono.AbstractChronology; 102 uses java.time.chrono.Chronology; 103 uses java.time.zone.ZoneRulesProvider; 104 uses java.util.spi.CalendarDataProvider; 105 uses java.util.spi.CalendarNameProvider; 106 uses java.util.spi.CurrencyNameProvider; 107 uses java.util.spi.LocaleNameProvider; 108 uses java.util.spi.ResourceBundleControlProvider; 109 uses java.util.spi.ResourceBundleProvider; 110 uses java.util.spi.TimeZoneNameProvider; 111 uses java.util.spi.ToolProvider; 112 uses javax.security.auth.spi.LoginModule; 113 114 115 // additional qualified exports may be inserted at build time 116 // see make/gensrc/GenModuleInfo.gmk 117 118 exports com.sun.security.ntlm to 119 java.security.sasl; 120 exports jdk.internal.jimage to 121 jdk.jlink; 122 exports jdk.internal.jimage.decompressor to 123 jdk.jlink; 124 exports jdk.internal.loader to 125 java.instrument, 126 java.logging, 127 jdk.jlink; 128 exports jdk.internal.jmod to 129 jdk.compiler, 130 jdk.jlink; 131 exports jdk.internal.logger to 132 java.logging; 133 exports jdk.internal.org.objectweb.asm to 134 jdk.jartool, 135 jdk.jlink, 136 jdk.scripting.nashorn, 137 jdk.vm.ci; 138 exports jdk.internal.org.objectweb.asm.tree to 139 jdk.jlink; 140 exports jdk.internal.org.objectweb.asm.util to 141 jdk.jlink, 142 jdk.scripting.nashorn; 143 exports jdk.internal.org.objectweb.asm.tree.analysis to 144 jdk.jlink; 145 exports jdk.internal.org.objectweb.asm.commons to 146 jdk.scripting.nashorn; 147 exports jdk.internal.org.objectweb.asm.signature to 148 jdk.scripting.nashorn; 149 exports jdk.internal.math to 150 java.awt; // Marlin's FloatMath 151 exports jdk.internal.module to 152 java.instrument, 153 java.management, 154 jdk.jartool, 155 jdk.jlink; 156 exports jdk.internal.misc to 157 java.awt, 158 java.swing, // SwingAccessor, TransferHandler, RepaintManager 159 jdk.incubator.httpclient, 160 java.logging, 161 java.management, 162 java.naming, 163 java.rmi, 164 java.security.jgss, 165 java.sql, 166 java.xml, 167 jdk.appletviewer, 168 jdk.charsets, 169 jdk.compiler, 170 jdk.jartool, 171 jdk.jdeps, 172 jdk.jlink, 173 jdk.jshell, 174 jdk.net, 175 jdk.scripting.nashorn, 176 jdk.scripting.nashorn.shell, 177 jdk.unsupported, 178 jdk.vm.ci; 179 exports jdk.internal.perf to 180 java.awt.toolkit, // D3DGraphicsDevice 181 java.management, 182 jdk.jvmstat; 183 exports jdk.internal.ref to 184 java.awt, // Margin: CleanerFactory 185 jdk.unsupported; 186 exports jdk.internal.reflect to 187 java.logging, 188 java.sql, 189 java.sql.rowset, 190 jdk.dynalink, 191 jdk.scripting.nashorn, 192 jdk.unsupported; 193 exports jdk.internal.vm.annotation to 194 jdk.unsupported, 195 jdk.vm.ci; 196 exports jdk.internal.util.jar to 197 jdk.jartool, 198 jdk.jdeps, 199 jdk.jlink; 200 exports jdk.internal.vm to 201 java.management, 202 jdk.jvmstat; 203 exports sun.net to 204 jdk.incubator.httpclient; 205 exports sun.net.ext to 206 jdk.net; 207 exports sun.net.dns to 208 java.security.jgss, 209 jdk.naming.dns; 210 exports sun.net.util to 211 java.awt, 212 jdk.jconsole, 213 jdk.naming.dns; 214 exports sun.net.www to 215 jdk.incubator.httpclient, 216 jdk.appletviewer, 217 jdk.jartool; 218 exports sun.net.www.protocol.http to 219 java.security.jgss; 220 exports sun.nio.ch to 221 java.management, 222 jdk.crypto.cryptoki, 223 jdk.sctp, 224 jdk.unsupported; 225 exports sun.nio.cs to 226 java.awt, // font 227 jdk.charsets; 228 exports sun.nio.fs to 229 jdk.unsupported; 230 exports sun.reflect.annotation to 231 jdk.compiler; 232 exports sun.reflect.generics.reflectiveObjects to 233 java.awt; // Beans 234 exports sun.reflect.misc to 235 java.awt, // Beans 236 java.print, 237 java.laf.system, // Aqua L&F 238 java.swing, 239 java.laf.nimbus, 240 java.laf.synth, 241 java.datatransfer, 242 java.management, 243 java.rmi, 244 java.sound, 245 java.sql.rowset, 246 java.xml, 247 java.xml.ws; 248 exports sun.security.action to 249 java.awt.toolkit, 250 java.laf.system, 251 java.awt, 252 java.imageio, 253 java.laf.nimbus, 254 java.laf.synth, 255 java.print, 256 java.security.jgss, 257 java.swing, 258 jdk.appletviewer; 259 exports sun.security.internal.interfaces to 260 jdk.crypto.cryptoki; 261 exports sun.security.internal.spec to 262 jdk.crypto.cryptoki; 263 exports sun.security.jca to 264 java.smartcardio, 265 jdk.crypto.ec, 266 jdk.crypto.cryptoki, 267 jdk.naming.dns; 268 exports sun.security.pkcs to 269 jdk.crypto.ec, 270 jdk.jartool; 271 exports sun.security.provider to 272 java.rmi, 273 java.security.jgss, 274 jdk.crypto.cryptoki, 275 jdk.policytool, 276 jdk.security.auth; 277 exports sun.security.provider.certpath to 278 java.naming; 279 exports sun.security.rsa to 280 jdk.crypto.cryptoki; 281 exports sun.security.ssl to 282 java.security.jgss; 283 exports sun.security.timestamp to 284 jdk.jartool; 285 exports sun.security.tools to 286 jdk.jartool; 287 exports sun.security.util to 288 java.awt, 289 java.naming, 290 java.rmi, 291 java.security.jgss, 292 java.security.sasl, 293 java.smartcardio, 294 java.xml.crypto, 295 jdk.appletviewer, 296 jdk.crypto.ec, 297 jdk.crypto.cryptoki, 298 jdk.jartool, 299 jdk.policytool, 300 jdk.security.auth, 301 jdk.security.jgss; 302 exports sun.security.x509 to 303 jdk.crypto.ec, 304 jdk.crypto.cryptoki, 305 jdk.jartool, 306 jdk.security.auth; 307 exports sun.security.validator to 308 jdk.jartool; 309 exports sun.text.resources to 310 jdk.localedata; 311 exports sun.util.cldr to 312 jdk.jlink; 313 exports sun.util.locale.provider to 314 java.swing, 315 jdk.jlink, 316 jdk.localedata; 317 exports sun.util.logging to 318 java.awt.toolkit, 319 java.awt, 320 java.logging, 321 java.prefs, 322 java.swing; 323 exports sun.util.resources to 324 jdk.localedata; 325 326 // JDK-internal service types 327 uses jdk.internal.logger.DefaultLoggerFinder; 328 uses sun.security.ssl.ClientKeyExchangeService; 329 uses sun.text.spi.JavaTimeDateTimePatternProvider; 330 uses sun.util.spi.CalendarProvider; 331 uses sun.util.locale.provider.LocaleDataMetaInfo; 332 uses sun.util.resources.LocaleData.CommonResourceBundleProvider; 333 uses sun.util.resources.LocaleData.SupplementaryResourceBundleProvider; 334 335 336 // Built-in service providers that are located via ServiceLoader 337 338 provides java.nio.file.spi.FileSystemProvider with 339 jdk.internal.jrtfs.JrtFileSystemProvider; 340 }