如果类有其他依赖项,则在运行时编译 java 文件

问题描述

需要实现以下功能——用户在网站上编写代码,例如发送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 (将#修改为@)