Java tutorial
import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.tools.JavaCompilerTool; import javax.tools.JavaFileObject; import javax.tools.StandardJavaFileManager; import javax.tools.ToolProvider; import javax.tools.JavaCompilerTool.CompilationTask; public class JavaCompilerDemo { public static void main(String[] args) { String sourceFile = "c:/HelloWorld.Java"; JavaCompilerTool compiler = ToolProvider.getSystemJavaCompilerTool(); StandardJavaFileManager fileManager = compiler.getStandardFileManager(null); // prepare the source file(s) to compile List<File> sourceFileList = new ArrayList<File>(); sourceFileList.add(new File(sourceFile)); Iterable<? extends JavaFileObject> compilationUnits = fileManager .getJavaFileObjectsFromFiles(sourceFileList); CompilationTask task = compiler.getTask(null, fileManager, null, null, null, compilationUnits); task.run(); boolean result = task.getResult(); if (result) { System.out.println("Compilation was successful"); } else { System.out.println("Compilation failed"); } try { fileManager.close(); } catch (IOException e) { } } } /* * import Java.util.Date; public class HelloWorld { public static void main (String[] args) { Date date = new Date (1234, 11, 12); System.out.println ("[" + date + "] Hello World !"); } } */