Package Summary  Overview Summary

class:Tool [NONE]

All Known Subinterfaces:
DocumentationTool, JavaCompiler

public interface Tool
Common interface for tools that can be invoked from a program. A tool is traditionally a command line program such as a compiler. The set of tools available with a platform is defined by the vendor.

Tools can be located using ServiceLoader.load(Class).

Since:
1.6

method:name() [NONE]

  • name

    default String name()
    Returns the name of this tool, or an empty string if no name is provided.
    API Note:
    It is recommended that the name be the same as would be used on the command line: for example, "javac", "jar", "jlink".
    Implementation Note:
    This implementation returns an empty string.
    Returns:
    the name of this tool
    Since:
    9
  • method:run(java.io.InputStream,java.io.OutputStream,java.io.OutputStream,java.lang.String...) [NONE]

    run

    int run (InputStream in, OutputStream out, OutputStream err, String... arguments)
    Run the tool with the given I/O channels and arguments. By convention a tool returns 0 for success and nonzero for errors. Any diagnostics generated will be written to either out or err in some unspecified format.
    Parameters:
    in - "standard" input; use System.in if null
    out - "standard" output; use System.out if null
    err - "standard" error; use System.err if null
    arguments - arguments to pass to the tool
    Returns:
    0 for success; nonzero otherwise
    Throws:
    NullPointerException - if the array of arguments contains any null elements.

    method:getSourceVersions() [NONE]

    getSourceVersions

    Set<SourceVersion> getSourceVersions()
    Returns the source versions of the Java programming language supported by this tool.
    Returns:
    a set of supported source versions