Adrninistrator / java-callgraph2

Programs for producing static call graphs for Java programs.
Apache License 2.0
178 stars 64 forks source link

使用过程中的几点疑问 #48

Open ShootingStarLele opened 1 month ago

ShootingStarLele commented 1 month ago

楼主好,刚接触这个项目,在使用过程中遇到了几点疑问,敬请方便的时候帮忙解答下,不胜感激:

  1. 是否可直接指定某个class文件 目前遇到的问题,我在jar_dir.properties里面放了完成的.class文件的路径,例:D:***\core\payacq\controller\AcqProvideFopsController.class,得到了如下提示:【处理单个文件时只支持指定.jar或.war格式,假如需要处理.class格式的文件,则需要指定其所在目录】,请问需要如何指定目录
  2. 是否可以直接指定到某个class类下面的某个方法级别,只针对这个方法生成调用链
  3. 因为目前不知道该工具是否已经支持生成可视化的调用报告 目前我是想用Graphviz来生成可视化的报告,首先在config.properties中设置为输出dot格式的文件:output.file.ext=.dot,但是发现生成的dot文件并不是dot的文件格式的,内容跟txt格式的一样,Graphviz无法直接转化,不知道是否是我漏了配置?
Adrninistrator commented 1 month ago
  1. 可以把class文件保存在某个目录中,在jar_dir.properties中指定这个目录就可以,目录中只有一个.class文件也可以
  2. 生成调用链可以使用https://github.com/Adrninistrator/java-all-call-graph项目,在以下配置文件中可以指定需要生成调用链的方法
    https://github.com/Adrninistrator/java-all-call-graph/blob/main/java-all-call-graph/src/main/resources/_jacg_config/method_class_4callee.properties
    https://github.com/Adrninistrator/java-all-call-graph/blob/main/java-all-call-graph/src/main/resources/_jacg_config/method_class_4caller.properties
  3. 现在没有生成Graphviz的.dot格式的调用链,如果格式不复杂的话也可以考虑支持,如果要支持的话会在java-all-call-graph项目中实现