As the title says, I want to parse some Java source code in Java. I'm pretty sure there are other java libraries that already perform this, but I couldn't find any.
Janino can parse, compile and execute Java code.
Antlr has a grammar file for Java. See this.
You may be looking for something like ANTLR: http://www.antlr.org/
Eclipse exposes the Syntax Tree of it's own Java compiler. You can simply access the elements.
See here.
JavaCC has a Java 1.5 grammar including generics.
the tokens are probably more fine-grained then what I want
Your first requirement is to get an accurate parse, and you will realistically only get that from an existing parser. What you do with the result is up to you.
来源:https://stackoverflow.com/questions/2763091/best-way-to-parse-java-in-java