Exported (Compiler Tree API )
Keywords: jdk.Exported class
Date: 2015-05-24

jdk

## Annotation Type Exported

-     @Documented
       @Retention(value=RUNTIME)
       @Target(value={TYPE,PACKAGE})
       @Exported
      public @interface Exported

  Indicates whether or not a JDK specific type or package is an exported part of the JDK suitable for use outside of the JDK implementation itself. This annotation should only be applied to types and packages outside of the Java SE namespaces of `java.*` and `javax.*` packages. For example, certain portions of `com.sun.*` are official parts of the JDK meant to be generally usable while other portions of `com.sun.*` are not. This annotation type allows those portions to be easily and programmatically distinguished.

  If in one release a type or package is `@Exported(true)`, in a subsequent major release such a type or package can transition to `@Exported(false)`.

  If a type or package is `@Exported(false)` in a release, it may be removed in a subsequent major release.

  If a top-level type has an `@Exported` annotation, any nested member types with the top-level type should have an `@Exported` annotation with the same value. (In exceptional cases, if a nested type is going to be removed before its enclosing type, the nested type's could be `@Exported(false)` while its enclosing type was `@Exported(true)`.) Likewise, if a package has an `@Exported` annotation, top-level types within that package should also have an `@Exported` annotation. Sometimes a top-level type may have a different `@Exported` value than its package.

  Since:
    1.8

- - ### Optional Element Summary

    Optional Elements
    Modifier and Type | Optional Element and Description
    --- | ---
    `boolean` | `value` Whether or not the annotated type or package is an exported part of the JDK.

- - ### Element Detail

    - #### value

          public abstract boolean value

      Whether or not the annotated type or package is an exported part of the JDK.
      Default:
        true

Copyright © 2005, 2015, Oracle and/or its affiliates. All rights reserved.