[JSR308] Checkers Framework Instability
mahmood at MIT.EDU
Fri Dec 19 12:12:06 EST 2008
I apologize for not following the thread more closely. I will go over
the emails soon.
> In general, the Checker framework seems not very stable for me, or
> simply my incorrect-use of the Checker's code.
> There are several NullPointer Exceptions.
My initial guess is that the environment isn't initialized properly.
I would recommend that you run the processor with assertions enabled.
Does PanguProcessor or ResourceBundleProcessor extend SourceChecker?
In the stacktrace you provided, it seems that you implemented your own
processor. You should be careful about that.
As we discussed earlier, typical annotation processors do not get all
the necessary type information from the compiler, especially type
information regarding local variables. SourceChecker.process()
(SourceChecker.attribute() to be exact) performs some magic calls to
the compiler to get the type information by starting an "attribution"
If you're processor doesn't invoke the attribution phase, many methods
in AnnotatedTypeFactory (and the rest of the framework) would fail.
If you want to rely on type information (instead of what I sampled
earlier), I highly recommend using SourceChecker.
More information about the JSR308