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