Closed zhzhdoai closed 6 months ago
临时解决:
java/com/adrninistrator/jacg/runner/RunnerGenAllGraph4Callee.java#genAllGraph4Callee
if(!callerMethod.getCallerFullMethod().contains("com.project")){
callGraphNode4CalleeStack.peek().setCallerMethodHash(callerMethodHash);
continue;
}
我试了一下,是支持的,可能和版本有关
看了代码allowed_class_prefix配置似乎只支持包名,不支持全类名。
需求是:其他被分析的恶意类如com.thoughtworks.xstream.Xstream,只加载该恶意类。不加载com.thoughtworks.xstream包名下其他类。想尽可能把资源放在项目代码上分析,不需要加载恶意包中其他无关类。
运行环境如下: allowed_class_prefix.properties配置: com.project. com.thoughtworks.xstream.Xstream
jar_dir.properties配置: /Users/xxxx/Documents/Code/selfproject/lib /Users/xxxx/Documents/java-all-call-graph-main/java-all-call-graph/xstream.jar
2024-05-10 14:54:55.899 [main] ERROR AbstractRunnerGenCallGraph.doGetSimpleClassName(258) - 指定的完整类名 com.thoughtworks.xstream.XStream 不存在,请检查,可能因为指定的类所在的jar包未在配置文件 _jacg_config/jar_dir.properties中指定