为什么CompilationTask.getTask(...)会自动创建一个文件夹来输出类文件?

时间:2012-02-27 18:24:29

标签: java

我正在做以下编译我的java文件。 outputFolder是我所有java文件所在的文件夹。

    //specify classes output folder
        Iterable<String> options = Arrays.asList("-d", outputFolder);

        Iterable<? extends JavaFileObject> fileObjects = fileManager.getJavaFileObjects(files);

        JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager,
                listener, options, null, fileObjects);

完全符合要求。但是,它会自动创建一个名为“test”的文件夹,并在那里吐出所有类文件...... 任何线索为什么我的程序这样做?有没有我错过的东西?

我也尝试了以下代码......但仍然没有运气......我得到了相同的结果

this.filePath = filePath;
outputFolder = this.filePath;//+ java.io.File.separator +"outputFolder";
classFolder = new File(outputFolder);
if(!classFolder.exists()){
  classFolder.mkdir();
}
fileManager.setLocation(StandardLocation.CLASS_OUTPUT, Arrays.asList(classFolder));

0 个答案:

没有答案