.java ファイルを解析し、このファイルのメソッド、属性に関する情報を保持するオブジェクトを作成できるパーサーを探しています。クラス、インターフェース、メソッドのパラメーター、および注釈。
何でも知ってますか?
https://code.google.com/p/javaparser/を見つけましたが、私にとって重要な注釈を処理できるかどうかはわかりません..
何かアドバイス?
ありがとう
.java ファイルを解析し、このファイルのメソッド、属性に関する情報を保持するオブジェクトを作成できるパーサーを探しています。クラス、インターフェース、メソッドのパラメーター、および注釈。
何でも知ってますか?
https://code.google.com/p/javaparser/を見つけましたが、私にとって重要な注釈を処理できるかどうかはわかりません..
何かアドバイス?
ありがとう
標準のJava Compiler APIを使用しないのはなぜですか? Java Magazine の最新号で取り上げられたことは知っています。いくつかのソース サンプルについては、こちらを参照してください。
私はJavaParserを使用してJavaコードを解析しています。はい-たとえば、アノテーションを処理できます-メソッドのアノテーションを取得します:
List<AnnotationExpr> annotations = method.getAnnotations();
メソッドにアノテーションを (名前で) 追加する:
annotations.add(new NormalAnnotationExpr( ASTHelper.createNameExpr("Override"), null));
Java 文法 ( http://docs.oracle.com/javase/specs/jls/se7/html/jls-18.html ) を使用し、パーサー ジェネレーター (YACC など) または Scala ParserCombinators を使用して AST を生成できます。 . この文法には、注釈が含まれています。