# 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

## 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`

## 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`