As part of the effort to add a listener mechanism to apt (5048539), the discovery policy was modified to only load the class for an AnnotationProcessorFactory once. On each round, the factory is asked to provide a new instance of the class and that instance is used by the tool to get information about the factory. Another possible implementation would be to re-use the instantiated factory object across apt rounds; doing so would allow cross-round state to be stored in either local variables in the factory object or as static state in the class.