从Java Project生成UML类图

时间:2011-05-29 10:45:47

标签: java uml reverse-engineering class-diagram

是否有一个很好的工具可以帮助将Java类逆向工程到UML,它将显示我的类如何相互关联的概述?它不需要从JAR文件反编译,因为我有源。我知道那里有很多,但大多数只能生成个人课程。我希望有一个工具可以生成类图,它显示了我所有当前类和包如何协同工作的概述,以便我可以分析我当前的架构设计。当然,分析是一回事。另一个是出于文档目的。

到目前为止,我知道了一些。但是他们不能做概述类图。这是我尝试过的Java UML工具列表,它能够进行逆向工程,但不能完成整个项目的概述类图:

  • StarUML(非常好的 Opensource UML工具,但无法生成概述类图)
  • ArgoUML(缓慢而缓慢且不断崩溃)
  • UModel(这是一个商业软件。我之前用过但发现很难使用)
  • MS Visio(它不支持Java UML逆向工程。仅适用于VB)

是否还有其他建议要添加到此列表中?并且希望能够生成概述Java类图。顺便说一句,我正在使用Eclipse。

4 个答案:

答案 0 :(得分:98)

我写了Class Visualizer,就是这样做的。 它是免费的工具,具有所有提到的功能 - 我个人将它用于相同的目的,如本文所述。 对于每个浏览的类,它显示2个即时生成的类图:类关系和类UML视图。 类关系图允许遍历整个结构。 它完全支持注释和泛型以及对JPA实体的特殊支持。 适用于大型项目(数千个课程)。

答案 1 :(得分:42)

我在Eclipse下使用Soyatec的eUML2插件,它可以很好地生成给出源代码的UML。此工具适用于Eclipse 4.4.x

答案 2 :(得分:2)

Eclipse的Omondo插件怎么样?我已经使用它,我发现它非常有用。虽然如果要为大型源生成图表,但可能必须以更多内存启动Eclipse。

答案 3 :(得分:2)

我说MoDisco是迄今为止最强大的一个(尽管可能不是最容易合作的人)。

MoDisco是一个通用的逆向工程框架(因此您可以自定义逆向工程项目,使用MoDisco甚至可以反向设计java方法的行为,不仅包括结构和签名),还包括一些预定义的功能,如从您需要的Java代码生成类图。