Compiler (Java SE 13 & JDK 13 )
Description: declaration: module: java.base, package: java.lang, class: Compiler
Keywords: java.lang.Compiler class

Module java.base
Package java.lang

# Class Compiler

java.lang.Object
java.lang.Compiler

    @Deprecated(since="9",
                forRemoval=true)
    public final class Compiler
    extends Object

Deprecated, for removal: This API element is subject to removal in a future version.
JIT compilers and their technologies vary too widely to be controlled effectively by a standardized interface. As such, many JIT compiler implementations ignore this interface, and are instead controllable by implementation-specific mechanisms such as command-line options. This class is subject to removal in a future version of Java SE.
The `Compiler` class is provided to support Java-to-native-code compilers and related services. By design, the `Compiler` class does nothing; it serves as a placeholder for a JIT compiler implementation. If no compiler is available, these methods do nothing.

Since:
  1.0

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `static Object` | `command​(Object any)` | Deprecated, for removal: This API element is subject to removal in a future version. Examines the argument type and its fields and perform some documented operation.
  `static boolean` | `compileClass​(Class<?> clazz)` | Deprecated, for removal: This API element is subject to removal in a future version. Compiles the specified class.
  `static boolean` | `compileClasses​(String string)` | Deprecated, for removal: This API element is subject to removal in a future version. Compiles all classes whose name matches the specified string.
  `static void` | `disable()` | Deprecated, for removal: This API element is subject to removal in a future version. Cause the Compiler to cease operation.
  `static void` | `enable()` | Deprecated, for removal: This API element is subject to removal in a future version. Cause the Compiler to resume operation.

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### compileClass

    public static boolean compileClass​(Class<?> clazz)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Compiles the specified class.
    Parameters:
      `clazz` - A class
    Returns:
      `true` if the compilation succeeded; `false` if the compilation failed or no compiler is available
    Throws:
      `NullPointerException` - If `clazz` is `null`

  - ### compileClasses

    public static boolean compileClasses​(String string)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Compiles all classes whose name matches the specified string.
    Parameters:
      `string` - The name of the classes to compile
    Returns:
      `true` if the compilation succeeded; `false` if the compilation failed or no compiler is available
    Throws:
      `NullPointerException` - If `string` is `null`

  - ### command

    public static Object command​(Object any)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Examines the argument type and its fields and perform some documented operation. No specific operations are required.
    Parameters:
      `any` - An argument
    Returns:
      A compiler-specific value, or `null` if no compiler is available
    Throws:
      `NullPointerException` - If `any` is `null`

  - ### enable

    public static void enable()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Cause the Compiler to resume operation.

  - ### disable

    public static void disable()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Cause the Compiler to cease operation.