如何从现有的Java代码生成UML图(特别是序列图)?


当前回答

你的代码库是什么?Java还是c++ ?

eUML2 for Java is a powerful UML modeler designed for Java developper in Eclipse. The free edition can be used for commercial use. It supports the following features: CVS and Team Support Designed for large project with multiple and customizable model views Helios Compliant Real-time code/model synchronization UML2.1 compliant and support of OMG XMI JDK 1.4 and 1.5 support The commercial edition provides: Advanced reversed engineering Powerful true dependency analyze tools UML Profile and MDD Database tools Customizable template support

其他回答

有一个名为binarydoc的免费工具,它可以从Java方法的字节码(而不是源代码)生成UML序列图或控制流图(CFG)。

下面是为java方法java.net.AbstractPlainSocketImpl.getInputStream生成的示例图binarydoc:

方法控制流图:

方法的UML序列图:

PlantUML怎么样? 这不是逆向工程!!这是在编码之前的工程设计。

使用IntelliJ IDEA。要生成类图,选择package并按Ctrl + Alt + U:

默认情况下,它只显示类名,而不显示所有依赖项。要更改它:右键单击->显示类别…和显示依赖项:

要生成依赖关系图(UML部署图),使用maven go View -> Tool Windows -> maven Projects,并按Ctrl + Alt + U:

结果:

此外,还可以生成更多其他图表。见文档。

我发现绿色插件非常简单,使用和生成类图从源代码。 试一试吧。 只需将插件复制到插件目录。

我注意到Intellij的SequenceDiagram插件也是一个不错的选择。