CompilationTask task = compiler.getTask(null, fileManager, listener, optionList, null, compilationUnits1);
// Get the list of annotation processors
LinkedList<AbstractProcessor> processors = new LinkedList<AbstractProcessor>();
The file "A.java" needs files "B.java" and "C.java" which reside in the same directory.
Compilation is OK and (as expected) files B and C are also compiled.
But CodeAnalyzerProcessor is handling only file A.java. B.java and C.java are compiled but
nothing from CodeAnalyzerProcessor is invoked for them - even with "-implicit:class" options.
Unfortunately it looks I have found answer - implicit dependencies are not subject to annotations processing.
If one wants a file to be processed the file name must be explicitly expressed in list of files to compile.
Its a pity - it looks like if I want to perform annotation processing on all files in project I have to construct
the list with all file names and pass it to compilation task. I hoped that it would be enogh to mention one "main"
file and the rest of files will be processed because of implicit compilation. And implicit compilation is done
but not the annotations processing during this phase.
Maybe there is another solution?
subject: While using Compiler API annotations are not processed on implicit dependencies