学习笔记——JAVA动态编译

xiaoxiao2021-02-28  101

在D:/text/建立HelloWorld.java并且写java代码

package study; import javax.tools.JavaCompiler; import javax.tools.ToolProvider; public class CompileDome { public static void main(String[] args) { JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); int result=compiler.run(null, null, null,"D:/text/HelloWorld.java"); System.out.println(result == 0?"成功":"失败"); } }

反射运行方法

//并未实际运行 try { URL[] urls = new URL[] { new URL("file:/" + "D:/text/") }; URLClassLoader loader = new URLClassLoader(urls); Class c = loader.loadClass("HelloWorld"); // 调用加载类的main方法 Method m = c.getMethod("main", String[].class); m.invoke(null, (Object) new String[]{}); } catch (Exception e) { e.printStackTrace(); }
转载请注明原文地址: https://www.6miu.com/read-61964.html

最新回复(0)