title: Reading a Java .class file
body: <p>I want to write a tool which generates some code using a compiled <code>.class</code> file as input. Specifically, I want to read from this class file:</p>
  
  <ul>
  <li>Methods, with annotations</li>
  <li>Method parameters, with annotations</li>
  </ul>
  
  <p>The input class file will likely refer to several types that are not in the tool's classpath. This is ok, I don't need to do anything with them, just need to read fully qualified type names as strings. I do need to get some information from the annotations, but they will be in the tool's classpath.</p>
  
  <p>Is there a library which I can use for this purpose? It would be nice if the API was a bit like the reflection API, but it doesn't have to be.</p>