Yes. I think technically it builds in multiple stages, first building the project as far as it can to generate the AST and some information needed by the annotation processor. Then it runs the annotation processor generating additional code and at last finishing the build.