首页 > 解决方案 > Wala 调用图不完整,invokeinterface 指令在调用图中没有任何成功节点

问题描述

当我使用 wala 构建调用图时。我发现invokeinterface 在调用图中没有任何成功节点。但是接口的Impl在分析范围内。我想要一个完整的调用图,包括调用接口的 impl。我怎么能做到这一点?

这是我构建调用图的代码:

private CallGraph buildCG(Set<IMethod> entryMethod) throws Exception{
        Iterable<Entrypoint> entrypointIterator = Utils.getDefaultEntryPoints(entryMethod);
        AnalysisOptions options = new AnalysisOptions(GlobalConfig.scope, entrypointIterator);
        CallGraphBuilder builder = Util.makeVanillaZeroOneCFABuilder(
                new JavaLanguage(),
                options,
                new AnalysisCacheImpl(),
                GlobalConfig.classHierarchy,
                GlobalConfig.scope
        );
        CallGraph callGraph = builder.makeCallGraph(options, null);
        return callGraph;
    }

如下图,invokeinterface没有succ节点 在此输入图片描述

标签: javacontrol-flowcontrol-flow-graphwala

解决方案


推荐阅读