首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Eclipse从.java文件创建CompilationUnit

Eclipse从.java文件创建CompilationUnit
EN

Stack Overflow用户
提问于 2012-06-23 12:31:06
回答 1查看 5.1K关注 0票数 5

如何将.java文件加载到CompilationUnit中?例如,假设我在当前项目中有一个A.java文件。我希望将其加载到CompilationUnit中,然后将其传递给ASTParser。将其作为纯文本加载并不是一个好的选择,因为在这种情况下,我似乎无法在AST中获得绑定信息。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-23 17:17:30

您可以使用jdteclipse core库加载项目。

使用以下代码,您可以加载工作区中的所有项目。

代码语言:javascript
复制
IWorkspace workspace = ResourcesPlugin.getWorkspace();
IWorkspaceRoot root = workspace.getRoot();
// Get all projects in the workspace
IProject[] projects = root.getProjects();

然后你可以得到包,然后是java文件。

代码语言:javascript
复制
IPackageFragment[] packages = JavaCore.create(project).getPackageFragments();
IPackageFragment mypackage = packages.get(0); // implement your own logic to select package
ICompilationUnit unit = mypackage.getCompilationUnits();

然后,您可以使用此ICompilationUnit对象来获取CompilationUnit

代码语言:javascript
复制
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。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11166862

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档