I downloaded JDK source code (6u23 build b5) for research, and Eclipsed decided to automatically build it. Astonishingly, it found errors.
A few examples.
java.beans.MetaData, line 1365:
ConstructorProperties annotation = constructor.getAnnotation(ConstructorProperties.class);
Type mismatch: cannot convert from Annotation to ConstructorProperties
java.awt.AWTEvent, line 220:
AWTAccessor.setAWTEventAccessor(new AWTAccessor.AWTEventAccessor() {
The type new AWTAccessor.AWTEventAccessor(){} must implement the inherited abstract method AWTAccessor.AWTEventAccessor.getAccessControlContext(AWTEvent)
I thought this code supposed to be absolutely correct, if not being one of the best examples of Java usage that one can learn from. But that doesn't even compile!
Update: I exported java package into individual project, removed the java package default import to avoid possible namespace conflicts and used JVM 1.6.0 to build it.