我正在使用inria Spoon解析 Java 项目,然后提取有关类、接口、字段和方法及其所有引用的信息。
我正在使用下面的代码来构建输入项目的模型。
SpoonAPI spoonAPI = new Launcher();
spoonAPI.addInputResource(projectDirectory);
spoonAPI.buildModel();
CtModel ctModel = spoonAPI.getModel();
但是,buildModel()在大型项目中非常耗时。
PS:我使用下面的代码使用JavaParser,它比 Spoon 更快。
Path pathToSource = Paths.get(projectDirectory);
SourceRoot sourceRoot = new SourceRoot(pathToSource);
sourceRoot.tryToParse();
List<CompilationUnit> compilations = sourceRoot.getCompilationUnits();
我想知道是否有更快的方法在 Spoon 中创建 CtModel。