Module java.compiler
Package javax.tools

# Class ToolProvider

java.lang.Object
javax.tools.ToolProvider

    public class ToolProvider
    extends Object

Provides methods for locating tool providers, for example, providers of compilers. This class complements the functionality of `ServiceLoader`.

Since:
  1.6

## Constructor Summary

Constructors
Constructor | Description
--- | ---
`ToolProvider()` |

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`static DocumentationTool` | `getSystemDocumentationTool()` | Returns the Java™ programming language documentation tool provided with this platform.
`static JavaCompiler` | `getSystemJavaCompiler()` | Returns the Java™ programming language compiler provided with this platform.
`static ClassLoader` | `getSystemToolClassLoader()` | Deprecated. This method is subject to removal in a future version of Java SE.

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

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

## Constructor Details

### ToolProvider

public ToolProvider()

## Method Details

### getSystemJavaCompiler

public static JavaCompiler getSystemJavaCompiler()
Returns the Java™ programming language compiler provided with this platform.

The file manager returned by calling `getStandardFileManager` on this compiler supports paths provided by any filesystem.

Implementation Note:
  This implementation returns the compiler provided by the `jdk.compiler` module if that module is available, and `null` otherwise.
Returns:
  the compiler provided with this platform or `null` if no compiler is provided

### getSystemDocumentationTool

public static DocumentationTool getSystemDocumentationTool()
Returns the Java™ programming language documentation tool provided with this platform.

The file manager returned by calling `getStandardFileManager` on this tool supports paths provided by any filesystem.

Implementation Note:
  This implementation returns the tool provided by the `jdk.javadoc` module if that module is available, and `null` otherwise.
Returns:
  the documentation tool provided with this platform or `null` if no documentation tool is provided

### getSystemToolClassLoader

@Deprecated(since="9") public static ClassLoader getSystemToolClassLoader()
Deprecated.
This method is subject to removal in a future version of Java SE. Use the `system tool provider` or `service loader` mechanisms to locate system tools as well as user-installed tools.
Returns a class loader that may be used to load system tools, or `null` if no such special loader is provided.

Implementation Requirements:
  This implementation always returns `null`.
Returns:
  a class loader, or `null`