gpt4 book ai didi

java - 如何为 java 项目生成调用图

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:02:28 26 4
gpt4 key购买 nike

是否可以生成应用程序的全局调用图?

基本上,我试图找到应用程序中最重要的类。

我正在寻找 Java 选项。

我试过 Doxy Gen,但它只生成继承图。

我当前的脚本:

#! /bin/bash

echo "digraph G
{"
find $1 -name \*.class |
sed s/\\.class$// |
while read x
do
javap -v $x | grep " = class" | sed "s%.*// *%\"$x\" -> %" | sed "s/$1\///" | sed "s/-> \(.*\)$/-> \"\1\"/"
done
echo "}"

最佳答案

javap -v 和一些 perl 将使您获得类之间的依赖关系。您可以让您的解析器稍微复杂一些,并获得方法之间的依赖关系。

更新:或者如果您有 *nix 或 cygwin,您可以获得依赖项列表作为

find com/akshor/pjt33/image -name \*.class |  sed s/\\.class$// |    while read x    do      javap -v $x | grep " = class" | sed "s%.*// *%$x -> %"    done

添加页眉和页脚,您可以将其传递给 dot 以呈现图形。如果您只是想知道大多数其他类使用了哪些类,正如您的问题所暗示的那样,那么

find com/akshor/pjt33/image -name \*.class |  sed s/\\.class$// |    while read x    do      javap -v $x | grep " = class" | sed "s%.*// *%%"    done |      sort | uniq -c | sort -n

关于java - 如何为 java 项目生成调用图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4974320/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com