|Re: [aspectj-dev] AjcTask and AntMessageHandler doesn't respect "failonerror" anymore|
I've already submitted a bug report (https://bugs.eclipse.org/bugs/show_bug.cgi?id=128128) but not a patch on this issue. After reading more of the code I'm sending this message to discuss how to fix and patch this bug.
The problem: Ant iajc task is no longer failing on build errors because no IMessage objects are present in the holder (they've all been consumed by the AntMessageHandler).
A likely solution: change AntMessageHandler.handleMessage() to return false by default. This indicates that the containing MessageHandler should continue to process and store IMessage objects and therefore make them countable for failonerror processing.
Other solutions include changing the AjcTask to use a MessageHandler derivative that delegates and always retains, or changing the protocol between handler and interceptor. These seem to be getting more complicated than needed at first look though.
I can contribute a patch with a unit test (asserting BuildException) for one of the solutions above (or another solution for that matter).
Thanks, John D. Heintz