Eclipse从.java文件创建CompilationUnit
如何将.java文件加载到CompilationUnit中?例如,假设我在当前项目中有一个A.java文件。我想将其加载到CompilationUnit中,然后将其传递给ASTParser。仅将其加载为纯文本不是一种选择,因为在那种情况下,我似乎不会在AST中获取绑定信息。
回答:
您可以使用jdt
和eclipse core
库加载项目。
使用以下代码,您可以将所有项目加载到工作区中。
IWorkspace workspace = ResourcesPlugin.getWorkspace();IWorkspaceRoot root = workspace.getRoot();
// Get all projects in the workspace
IProject[] projects = root.getProjects();
然后,您可以获取软件包,然后获取Java文件。
IPackageFragment[] packages = JavaCore.create(project).getPackageFragments();IPackageFragment mypackage = packages.get(0); // implement your own logic to select package
ICompilationUnit unit = mypackage.getCompilationUnits();
然后,您可以使用此ICompilationUnit对象获取CompilationUnit
ASTParser parser = ASTParser.newParser(AST.JLS3); parser.setKind(ASTParser.K_COMPILATION_UNIT);
parser.setSource(unit);
parser.setResolveBindings(true);
CompilationUnit cUnit = parser.createAST(null);
可以将此CompilationUnit对象传递给ASTParser。
以上是 Eclipse从.java文件创建CompilationUnit 的全部内容, 来源链接: utcz.com/qa/423743.html