1. 程式人生 > >Java動態執行編譯好的類兩種方法

Java動態執行編譯好的類兩種方法

動態執行編譯好的類

  • 通過Runtime.getRuntime()執行啟動新的程序執行
Runtime run = Runtime.getRuntime();
Process process = run.exec("java -cp d:/myjava HelloWorld");
// Process process = run.exec("jaca -cp"+dir+" "+classFile);
  • 通過反射執行編譯好的類
    //通過反射執行程式
    public static void runJavaClassByReflect(String dir,String calssFile) throws
Exception{ try{ URL[] urls = new URL[]{new URL("file:"+dir)}; URLClassLoader loader = new URLClassLoader(urls); Class c = loader.loadClass(classFile); //呼叫載入類的main方法 c.getMethod("main",String[].class).invoke(null,(Object)new String[]{}); }catch
(Exception e){ e.printStackTrace(); } }