jdt ASTParser を使用して、Java ファイルで宣言された String フィールドの値を取得する方法はありますか。実際に必要なのは、他のクラスからの可能な依存関係を解決することです。たとえば、
public String str = "somethig"+SomeTherClass.SOMETHING_ELSE.
1 に答える
2
私はそれを理解しました...それは実際には非常に単純でした..これがコードです:
ICompilationUnit cu = ....
ASTParser parser = ASTParser.newParser(AST.JLS3);
parser.setResolveBindings(true);
parser.setSource(cu);
parser.setStatementsRecovery(true);
parser.setBindingsRecovery(true);
ASTNode node = parser.createAST(null);
node.accept(new YourVisitor());
次に、ASTVisitor の実装で、訪問中のノードで resolveConstantExpressionValue() を呼び出す必要があります。
于 2010-06-05T20:57:38.860 に答える