The comma , items separator used in an array initialization list may end the list in C, this is mentioned in The C Programming Language 2nd ed by Kernighan
Sun javac has a bug wrt parsing trailing commas in annotations.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=284088
Section 10.6 of the spec explicitly says that a trailing comma is allowed (and ignored):
A trailing comma may appear after the last expression in an array initializer and is ignored.
Link
From the Java Language Specification, section 10.6:
A trailing comma may appear after the last expression in an array initializer and is ignored.