我目前正在制作一个工具,它将根据用户输入输出 Java 类文件以供使用。我输出了一组 .java 文件,其中一些引用了当前上下文中不存在的类和变量。因此,当我编译时,输出文件会记录这些错误并且不会编译该类。我的问题是:有没有办法使用 JavaCompiler 按原样编译类文件?
这是编译代码:
public static void compileAll(File file) throws IOException{
String fileToCompile = "C:/test.java";
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
FileOutputStream errorStream = new FileOutputStream("Errors.txt");
int compilationResult = compiler.run(null, null, errorStream, "-verbose", fileToCompile );
if(compilationResult == 0){
System.out.println("Compilation is successful");
}else{
System.out.println("Compilation Failed");
}
}