Eclipse jdt:为IClassFile解析AST并且没有附加源

时间:2015-04-16 10:47:34

标签: java eclipse eclipse-jdt

我想获取IClassFile的源代码并将其解析为AST。我以为你是这样做的:

protected static CompilationUnit parse(IClassFile classFile) {
    ASTParser parser = ASTParser.newParser(AST.JLS3);
    parser.setKind(ASTParser.K_COMPILATION_UNIT);
    parser.setProject(classFile.getJavaProject());

    try {

        String source = classFile.getSource();
        parser.setSource(source.toCharArray());
    } catch (JavaModelException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    parser.setResolveBindings(true);
    return (CompilationUnit) parser.createAST(null); // parse
}

String来源为null。 :(

Eclipse说当我想查看相应的类时我必须附加源代码,但在大纲中我可以看到正确的ClassFile及其所有方法等等。因此,必须有一种方法来解析AST没有附加源的IClassFile(或Eclipse是否以编程方式附加源?)。

如何获取此IClassFile的ASTNode?

0 个答案:

没有答案