我正在编译这个类,如果我传递给编译的是这样JavaCompiler
的,它会给我一个编译错误:String
public class className extends classNeed{
}
但是如果我删除public
它就可以了。我该怎么做才能使其可编译:
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
String program = code;
Iterable<? extends JavaFileObject> fileObjects;
fileObjects = getJavaSourceFromString(program);
String[] options = new String[]{"-d", contextClass.getPath()+"temp/"+pathJar+"/",
"-classpath",contextClass.getBasePath()+"WEBINF/lib/lib1.jar;
"+contextClass.getBasePath()+"WEB-INF/lib/lib2.jar"};
compiler.getTask(null, null, null, Arrays.asList(options), null, fileObjects).call();
它仍然公开工作吗?
编辑:错误字符串:///code.java:16:类 className 是公共的,应该在归档的 className.java 中声明
但名字是一样的