问题描述
需要实现以下功能——用户在网站上编写代码,例如发送java中的方法或类进行验证。系统检查编译代码并测试方法(或类)的业务逻辑。我知道如何在“简单”类的运行时实现编译,例如: File classFile = new File("FirstTest.java"); Files.write(classFile.toPath(),source.getBytes(StandardCharsets.UTF_8));
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
OutputStream outputStreamErr = new ByteArrayOutputStream();
int compilingResult = compiler.run(null,null,outputStreamErr,classFile.getPath());
但是当编译后的类包含任何额外的导入(甚至只是一个集合,更不用说JUnit)时,编译时就会出错。有哪些选项可以解决此问题。动态编译时如何添加依赖,或者有没有其他方式实现这个功能?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)