http://docs.oracle.com/javase/1.5.0/docs/guide/apt/GettingStarted.html