簡體   English   中英

Eclipse 從 .java 文件創建 CompilationUnit

[英]Eclipse create CompilationUnit from .java file

如何將 .java 文件加載到 CompilationUnit 中? 例如,假設我當前的項目中有一個 A.java 文件。 我想將它加載到 CompilationUnit 中,然后將它傳遞給 ASTParser。 僅僅將它作為純文本加載不是一個選項,因為在那種情況下我似乎不會在 AST 中獲得綁定信息。

您可以使用jdteclipse 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。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM