使用javax.tools.JavaCompiler在内存中完全编译代码

我正在使用javax.tools包(JDK 1.7)中的JavaCompiler即时编译一些内容,如下所示:


compiler.run(null, null, "-cp", paths, "path/to/my/file.java");

它可以工作,但我想在内存中完成所有操作(例如,传递带有代码的字符串,而不是源文件,并返回字节码而不是.class文件)。我发现扩展InputStream和OutputStream参数没有用,因为它可能与控制台中的相同。您知道一种使run方法像这样工作的方法吗?还是您知道使用该getTask()方法执行此操作的可靠方法?(扩展FileManager看起来很容易,但并不容易:)


慕侠2389804
浏览 1181回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java