【发布时间】:2017-05-09 20:11:17
【问题描述】:
这是错误;
错误:类名“Hello.java”仅在显式请求注释处理时才被接受 1 个错误
这是JavaCompiler代码;
public static void main(String[] args) {
PrintWriter writer = new PrintWriter( System.out);
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
StandardJavaFileManager fileManager = compiler.getStandardFileManager( null, null, null);
ArrayList<String> classes = new ArrayList<>();
classes.add( "Hello.java");
JavaCompiler.CompilationTask task = compiler.getTask( writer, fileManager, null, null, classes, null);
task.call();
}
这是 Hello 类;
public class Hello {
public static void main(String[] args) {
System.out.println( "Hi");
}
}
我知道这个问题被问了近一百万次,但所有的答案都是这个=“你忘记在你的类名末尾添加 .java”,但我做到了,正如你所看到的。为什么这不起作用?使用 JavaCompiler 时有什么不同吗?我在构造函数中的参数是否错误?感谢您的帮助。
【问题讨论】:
标签: java compilation javacompiler