如何为Groovy程序创建协作图?

时间:2012-08-30 08:35:35

标签: groovy doxygen

我想知道是否有办法为Doov为Java等生成Groovy程序的协作图。我尝试运行Doxygen但它似乎无法解析Groovy文件(或我弄错了吗?)。

2 个答案:

答案 0 :(得分:0)

根据doxygen manual Groovy支持 (支持的语言是C,C ++,C#,Objective-C,IDL,Java,VHDL,PHP,Python,Tcl,Fortran,和D)。根据{{​​3}}的问题12,如果您尝试记录不受支持的语言,则必须修改doxygen源。

如果Groovy类似于其中一种语言(我从未使用过Groovy),那么您可以尝试使用这些现有的解析器来尝试解析Groovy源代码。为此,您需要配置doxygen以在.groovy扩展名的文件上运行正确的解析器(这是groovy文件的正确扩展名吗?)。您可以通过将doxygen配置文件中的FAQ配置选项设置为

来完成此操作
EXTENSION_MAPPING += groovy=Java

这告诉doxygen在任何扩展名为.groovy的文件上使用Java解析器。

答案 1 :(得分:0)

您可以从IntelliJ内部生成图表。它们看起来像这样:

enter image description here


修改

我认为在groovy中创建正确的协作图非常困难(也许是不可能的),因为它是一种带有鸭子输入的动态语言。

如何在协作图中说明这些类:​​

class Cage {
    private def bird

    Cage(bird) {
        this.bird = bird
    }

    def shake() {
        bird.sing()
    }
}

class Dog {
    def sing() {
        println 'Woof'
    }
}


class Main {
    static void main(String[] args) {
        Cage cage = new Cage(new Dog())
        cage.shake()
    }
}