如何保证在调用函数之前创建java文件

如何保证在调用函数之前创建java文件,java,javapoet,Java,Javapoet,我正在使用JavaPoet生成代码,下面是我的代码片段的核心部分: ... TypeSpec typeSpec = createTypeSpec(); JavaFile javaFile = JavaFile.builder(myPackage, typeSpec).build(); // write to file javaFile.writeTo(filer); // I want to call this doTask() only after the java file is wri

我正在使用JavaPoet生成代码,下面是我的代码片段的核心部分:

...
TypeSpec typeSpec = createTypeSpec();
JavaFile javaFile = JavaFile.builder(myPackage, typeSpec).build();

// write to file
javaFile.writeTo(filer);

// I want to call this doTask() only after the java file is written on hard disk. How to guarantee that?
doTask();
它很好用。java文件是在硬盘上生成的。现在我有一个新的需求,在硬盘上生成java文件之后,我需要做一些工作,那就是在上面的代码片段中调用
doTask()
。但是如何保证生成java文件,然后启动
doTask()


请注意,在生成java文件时,也会在运行时创建相应的包。因此,java文件所在的目录不是在编译时创建的

它现在不是在等待它完成写作吗?javadoc没有指出
writeFile
是异步的。为什么您认为它没有在那一点上被写入?因为我有一个代码可以将文件移动到
doTask()
中的另一个位置,有时它可以工作,有时文件不存在。