}
catch (Exception e) {
if (e instanceof ProcessingException) {
ProcessingException ce = (ProcessingException)e;
Element element = ce.getElement();
AnnotationMirror annotation = ce.getAnnotation();
//
StringBuilder msg = new StringBuilder();
for (Message cm : ce) {
msg.setLength(0);
MessageCode code = cm.getCode();
String[] args = cm.getArguments();
if (formalErrorReporting) {
cm.format(msg, true);
}
else {
try {
new Formatter(msg).format(Locale.getDefault(), code.getMessage(), (Object[])args).flush();
}
catch (Exception e1) {
e1.printStackTrace();
System.out.println("---------------------------------------");
System.out.println(code.getMessage());
System.out.println(Arrays.toString(args));
e.printStackTrace();
System.out.println("---------------------------------------");
}
}
// Log error
StringWriter writer = new StringWriter();
if (element == null) {
writer.append("Compilation error: ");
}
else if (annotation == null) {
writer.
append("Compilation error for element ").
append(element.toString()).append(": ");
}
else {
writer.
append("Compilation error for element ").
append(element.toString()).
append(" at annotation ").
append(annotation.toString()).append(": ");
}
writer.append(msg).append("\n");
e.printStackTrace(new PrintWriter(writer));
logger.info(writer.getBuffer());