diff -ur groovy-1.8.7.orig/src/main/org/codehaus/groovy/tools/javac/JavaStubGenerator.java groovy-1.8.7/src/main/org/codehaus/groovy/tools/javac/JavaStubGenerator.java
--- groovy-1.8.7.orig/src/main/org/codehaus/groovy/tools/javac/JavaStubGenerator.java	2012-07-25 08:41:30.000000000 -0400
+++ groovy-1.8.7/src/main/org/codehaus/groovy/tools/javac/JavaStubGenerator.java	2013-04-08 09:02:23.277789343 -0400
@@ -655,7 +655,7 @@
     }
 
     private void printAnnotation(PrintWriter out, AnnotationNode annotation) {
-        out.print("@" + annotation.getClassNode().getName() + "(");
+        out.print("@" + annotation.getClassNode().getName().replace('$', '.') + "(");
         boolean first = true;
         Map<String, Expression> members = annotation.getMembers();
         for (String key : members.keySet()) {
