javax.tools


1. Creating a Basic Java Class:

// Create a simple Java class.
import javax.tools.*;
class ExampleClass {
    private String name;
    public ExampleClass(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
}

2. Compiling a Java Class:

// Compile the Java class.
import javax.tools.*;
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
JavaFileManager fileManager = new StandardJavaFileManager(compiler.getDiagnosticListener());
CompilationTask task = compiler.getTask(null, fileManager, null, null, null, Arrays.asList("ExampleClass.java"));
task.call();

3. Compiling a Java Package:

4. Compiling a Java Source String:

5. Compiling a Java File with Arguments:

6. Compiling a Java File with Output:

7. Compiling a Java File with Options:

8. Compiling a Java File with Warnings:

9. Compiling a Java File with Suppressed Warnings:

10. Compiling a Java File with Classpath:

11. Compiling a Java File with Dependencies:

12. Compiling a Java File with Generated Sources:

13. Compiling a Java File with Annotation Processors:

14. Compiling a Java File with Class Loader:

15. Compiling a Java File with Dynamic Compilation:

16. Compiling a Java File with Source Versions:

17. Compiling a Java File with Target Versions:

18. Compiling a Java File with Language Levels:

19. Compiling a Java File with Preserve Order:

20. Compiling a Java File with Incremental Compilation:

21. Compiling a Java File with Full Compilation:

22. Compiling a Java File with Source and Target Compatibility:

23. Compiling a Java File with Classpath and Sourcepath:

24. Compiling a Java File with Plugins:

25. Compiling a Java File with Debug Information:

26. Compiling a Java File with UTF-8 Character Encoding:

27. Compiling a Java File with Extended Error Reporting:

28. Compiling a Java File with Custom Diagnostic Handler:

29. Compiling a Java File with Class Query:

30. Compiling a Java File with Options File:

31. Compiling a Java File with Processor:

32. Compiling a Java File with Release Version:

33. Compiling a Java File with Preview Features:

34. Compiling a Java File with Record Preview:

35. Compiling a Java File with Lint:

36. Compiling a Java File with Experimental Features:

37. Compiling a Java File with Java Decompiler:

38. Compiling a Java File with ResourceBundle:

39. Compiling a Java File with Resource:

40. Compiling a Java File with Unicode:

41. Compiling a Java File with JSP:

42. Compiling a Java File with Schema:

43. Compiling a Java File with WSDL:

44. Compiling a Java File with Annotation Processing: