package javacompiler; import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class COmpilerHello { public static void main(String[] args) { String s="C:/Users/MariaHussain/Desktop/hussi.java"; JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); int result = compiler.run(System.in,System.out,System.err,s); System.out.println("Compile result code = " + result); } }
import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class TestingCompile { public static void main(String[] args) { JavaCompiler javac = ToolProvider.getSystemJavaCompiler(); int result = javac.run(null, null, null, "C:\\path\\to\\Testing.java"); if (result != 0) { throw new RuntimeException("compile failed: exit " + result); } } }
package javacompiler; import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class COmpilerHello { public static void main(String[] args) { String s="C:/Users/MariaHussain/Desktop/hussi.java"; JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); int result = compiler.run(System.in,System.out,System.err,s); System.out.println("Compile result code = " + result); } }
package sourcerunner; import java.io.IOException; import java.util.concurrent.TimeUnit; import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class SourceRunner { public static void main(String[] args) throws IOException, ClassNotFoundException, InstantiationException, IllegalAccessException, InterruptedException { JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); compiler.run(System.in, System.out, System.err, "src/sourcerunner/HelloWorld.java"); TimeUnit.SECONDS.sleep(1L); Class<?> cls = Class.forName("sourcerunner.HelloWorld"); Object instance = cls.newInstance(); System.out.println(instance); } }
import java.io.FileOutputStream; import java.io.IOException; import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class JavaTest { public static void main(String[] args) throws IOException { JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); // creating a file, but you could load an existing one FileOutputStream javaFile = new FileOutputStream("Test.java"); javaFile.write("public class Test { public static void main(String[] args) { javax.swing.JOptionPane.showMessageDialog(null, \"I'm here!\",\"Test\", 1);}}" .getBytes()); // compiling it JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); compiler.run(null, System.out, System.err, "Test.java"); // running it Runtime.getRuntime().exec("java Test"); } }
package ccjmne; import java.io.File; import java.net.MalformedURLException; import java.net.URL; import java.net.URLClassLoader; import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class JobRunnerTest { public static void main(final String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, MalformedURLException { final JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); final File root = new File("/home/eric/"); compiler.run(null, null, null, root + "/stackoverflow/A.java"); final URLClassLoader classLoader = URLClassLoader.newInstance(new URL[] { root.toURI().toURL() }); final Class<JobRunner> cls = (Class<JobRunner>) Class.forName("stackoverflow.A", true, classLoader); cls.newInstance().runJob("Hello world!".split(" ")); } }
Use below code to run in backend in return response in server side. Example:: package test; import javax.tools.*; public class Test { public static void main(String[] args) { String fileToCompile = "C:\\Users\\sanpande\\workspace\\Test\\src\\test" + java.io.File.separator + "MyClass.java"; JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); int compilationResult = compiler.run(null, null, null, fileToCompile); if (compilationResult == 0) { System.out.println("Compilation is successful"); } else { System.out.println("Compilation Failed"); } } } package test; public class MyClass{ public void myMethod(){ System.out.println("My Method Called"); } }
compiler.run(null, null, null, sourceFile.getPath());
this.compiler.run(null, System.out, System.err, "-d", "testFiles2", "testFiles/Hello1.java", "testFiles/Hello2.java");
int compilationResult = compiler.run(null, null, errorStream, filenames); if(compilationResult == 0){ System.out.println("Compilation is successful");
compiler.run(null, null, null, ruleFile.getPath());
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); String[] compileArgs = { javaFile.getAbsolutePath() }; int r = compiler.run(in, out, err, compileArgs); if (r != 0) { JOptionPane.showMessageDialog(null, err.toString(), "CompileError", JOptionPane.ERROR_MESSAGE);
return c.run(null, null, null, file.getAbsolutePath());
int compilationResult = compiler.run(null, null, null, f);
compiler.run(null, null, null, sourcePath);
import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class CompilerExample { public static void main(String[] args) { String fileToCompile = "/Users/rupas/VolatileExample.java"; JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); int compilationResult = compiler.run(null, null, null, fileToCompile); if (compilationResult == 0) { System.out.println("Compilation is successful"); } else { System.out.println("Compilation Failed"); } } }