JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
compiler.run(System.in , System.out ,System.err, "/home/visruth/Desktop/Sample.java");
示例.java:
public class Sample {
public static void main(String... args) {
System.out.println("Hello world");
}
}
上面的代码对我有用。
确保"D:/data/jeeViews/projects/seds/vcvd/main/com/vcvd/servlet/Dispatcher.java"
您提供的路径有效。请在 中发布代码Dispatcher.java
。因为,如果它引用内部的其他类也可能会出现此异常。例如,假设在 Sample.java 所在的同一位置还存在另一个Another.java文件。如果将上面的Sample.java修改如下可能会出现这个异常,因为,它从类路径中引用了另一个类。Another another = new Another();
public class Sample {
public static void main(String... args) {
// makes exception as it is not in the class path.
// to avoid exception make it available in the class path.
Another another = new Another();
System.out.println("Hello world");
}
}
另一个.java:
public class Another {
//codes........
}
更好的解决方案是使用像ant这样的构建工具。