在eclipse jdt / ast中使用ICompilationUnit进行ASTParser.setSource()方法

时间:2012-10-09 01:38:15

标签: java eclipse methods abstract-syntax-tree eclipse-jdt

ASTParser.setSource具有不同输入类型的多态方法。

enter image description here

但是,当我使用ICompilationUnit作为setSource方法的输入时,

enter image description here

我收到一条错误消息,说我没有使用char []作为输入参数。

enter image description here

为什么会出现这个错误?

ADDED

我使用eclipse jdt / ast作为独立java程序的一部分。在这样做的过程中,我不使用eclipse项目/资源,而是将java源加载到char []作为setSource()的参数。我不确定,但日食可能会认识到它不是作为阻止其他多态方法使用的插件运行的。

2 个答案:

答案 0 :(得分:0)

检查您是否已将该种类指定为编译单位。

// Parse the class as a compilation unit.
parser.setKind(ASTParser.K_COMPILATION_UNIT);

答案 1 :(得分:0)

我试图将jdt / ast作为独立java程序的库来执行。当我在插件上下文中重新运行它们时,一切正常。