从Java项目自动创建完整的类图

有没有从Java项目自动创建完整类图的解决方案?

我花了很多时间在网上查找,尝试 Papyrus、Jar2UML、UML2Tools、DiaGen、jGraps、Class-visualizer,但尚未找到任何当前有效的解决方案。尽管大多数提到的工具都可以工作(有些工具当前无法工作),但它们不会自动生成完整类层次结构的图表。我意识到这可能是圣杯,并且可能需要参数化,但我认为今天这应该是可能的。

更广泛使用的要求是:

  • 正在工作

  • 易于使用,或有关如何执行此操作的最新教程

  • 不需要手动编码

  • 独立或 Eclipse/NetBeans/IntelliJ 插件

  • 自由的

如果没有类似的东西可用,我正在考虑创建类似的东西。


交互式爱情
浏览 128回答 2
2回答

眼眸繁星

事实上,我不确定将项目的所有类放入一个类图中是一个好主意,因为结果对于很多类来说是不可读的,例如您可以使用我的工具BoUML来做到这一点。下载/安装/运行后:创建一个新项目在全局菜单语言中选择 Java对于出现的第一个目录对话框,请按“取消”按钮(您没有java 目录),然后对于第二个目录对话框,选择包含要建模的所有 Java 源的根目录,然后等待结束在左侧的浏览器中,在任何已创建的类视图或您自己创建的新类视图中,单击鼠标右键并选择“新建类图”,然后双击将其打开可能您需要隐藏图中类的详细信息以限制其大小(您可以稍后执行此操作,但最好立即执行此操作,以防您有很多类),在这种情况下,请右键单击图表或将其放入浏览器中编辑绘图设置并将设置设置为“是”隐藏类属性和隐藏类操作然后确认(按钮“确定”)使用顶部的双目按钮(靠近打印按钮),将种类更改为类,然后使用按钮搜索,然后标记它们,然后关闭进入打开的图表(显示在窗口的右侧部分),单击鼠标右键并选择添加标记元素,将类放置在随机位置,然后重做鼠标右键单击并选择自动布局(当然,您也可以自己移动类) )正如您所看到的,类之间的所有关系都被绘制出来,而不仅仅是泛化/实现。如果您只需要它们,而不必一一隐藏所有其他关系,您可以开发一个插件来标记模型的所有类和泛化/实现,然后更改我给出的过程:当您编辑绘图设置时,也进入第二个选项卡并设置为“否”设置绘制所有关系而不是使用浏览器搜索(双目按钮)来选择所有类,而是使用您的插件无论如何,再次将所有类显示在一个图表中并不是一个好主意,除非您的类很少。

jeck猫

尽管 BoUML 在这方面做得不错,但对于大型项目来说,它并不漂亮。为了获得更好的解决方案,从源代码完全自动创建基本但完整的类图,请尝试我用 Java 编写的简单提取器:https: //github.com/folterj/ClassDiagramExtractor该项目使用反射,并从文件夹(和子文件夹)中的所有包生成图表。笔记:没有命令行选项 - 在代码中克隆并运行设置源文件夹这会生成一个与 GraphViz(点)一起使用的 gv 文件结果看起来相当不错,因为它将包分组在一起,甚至使用了颜色。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java